修改冰箱贴价格

This commit is contained in:
2025-12-29 11:51:06 +08:00
والد 2099f32634
کامیت 4b1a74bf13
2فایلهای تغییر یافته به همراه213 افزوده شده و 69 حذف شده
@@ -1758,6 +1758,9 @@ public class ProductService {
for (Product product : priceList) { for (Product product : priceList) {
product.setPrice(Math.ceil((product.getPrice() + addPrice) * product.getPriceMultiple())); product.setPrice(Math.ceil((product.getPrice() + addPrice) * product.getPriceMultiple()));
} }
for (Product product : priceList) {
product.setPrice(Math.ceil(product.getPrice() * number * min * zhekou));
}
if ("500克拉丝闪银".equals(kind)) { if ("500克拉丝闪银".equals(kind)) {
String[] craft = dto.getCraft(); String[] craft = dto.getCraft();
if (!StringUtils.isEmpty(craft)) { if (!StringUtils.isEmpty(craft)) {
@@ -1778,13 +1781,12 @@ public class ProductService {
} }
} }
} else { } else {
dto.setMaxian(1);
getCraft(dto, priceList, null, null, 0); getCraft(dto, priceList, null, null, 0);
} }
// 根据位数重新算价格 // 根据位数重新算价格
// 根据款数重新算价格 // 根据款数重新算价格
for (Product product : priceList) {
product.setPrice(Math.ceil(product.getPrice() * number * min * zhekou));
}
//直角的价格 按照报价系统乘以2.3 异形的按照报价系统的价格乘以1.5哈 //直角的价格 按照报价系统乘以2.3 异形的按照报价系统的价格乘以1.5哈
if ("金绒".equals(kind) && craft_list.contains("白墨")) { if ("金绒".equals(kind) && craft_list.contains("白墨")) {
for (Product product : priceList) { for (Product product : priceList) {
@@ -5359,9 +5361,15 @@ public class ProductService {
List<String> carft_list = dto.getCraft() == null ? new ArrayList<>() : Arrays.asList(dto.getCraft()); List<String> carft_list = dto.getCraft() == null ? new ArrayList<>() : Arrays.asList(dto.getCraft());
List<Product> priceList = new ArrayList<>(); List<Product> priceList = new ArrayList<>();
String cailiao = dto.getCailiao(); String cailiao = dto.getCailiao();
double price = 0;
double min_price = 50; double min_price = 50;
double last_price = 1000; double last_price = 1000;
int count = dto.getCount();
int number = dto.getNumber();
double area = width * length * dto.getCount() / 10000 * dto.getNumber(); double area = width * length * dto.getCount() / 10000 * dto.getNumber();
String weight = "";
if ("冰箱贴".equals(dto.getKindValue())) {
double[] areas = {0, 0.1, 0.15, 0.2, 0.3, 0.4, 0.5, 1, 2, 3, 5, 7, 9, 10, 20, 50}; double[] areas = {0, 0.1, 0.15, 0.2, 0.3, 0.4, 0.5, 1, 2, 3, 5, 7, 9, 10, 20, 50};
int[] prices = {0, 1500, 1480, 1450, 1400, 1380, 1350, 1200, 1100, 1080, 1050, 1000, 1000, 1000, 1000, 1000}; int[] prices = {0, 1500, 1480, 1450, 1400, 1380, 1350, 1200, 1100, 1080, 1050, 1000, 1000, 1000, 1000, 1000};
if ("2.3".equals(cailiao) && carft_list.contains("激光")) { if ("2.3".equals(cailiao) && carft_list.contains("激光")) {
@@ -5376,7 +5384,35 @@ public class ProductService {
prices = new int[]{0, 1500, 1400, 1380, 1350, 1300, 1280, 1250, 1200, 1150, 1100, 1100, 1100, 1100, 1100, 1100}; prices = new int[]{0, 1500, 1400, 1380, 1350, 1300, 1280, 1250, 1200, 1150, 1100, 1100, 1100, 1100, 1100, 1100};
last_price = 1100; last_price = 1100;
} }
double price = PriceUtils.TableUnitPrice(area, prices, areas, last_price); price = PriceUtils.TableUnitPrice(area, prices, areas, last_price);
price = Math.max(price, min_price) + ((dto.getNumber() - 1) * 8);
weight = df.format(width * length * 4.17 * dto.getCount() * 0.1 * number / 1000 * Double.parseDouble(cailiao));
}
if ("对联冰箱贴".equals(dto.getKindValue())) {
double basePrice = 0;
min_price = 55;
double baseWeight = 0.4;
if ("2.3".equals(cailiao) && "70*80".equals(dto.getSize())) {
basePrice = 8;
}
if ("2.3滴塑".equals(cailiao) && "70*80".equals(dto.getSize())) {
basePrice = 10;
}
if ("2.3".equals(cailiao) && "90*100".equals(dto.getSize())) {
basePrice = 10;
baseWeight = 0.6;
}
if ("2.3滴塑".equals(cailiao) && "90*100".equals(dto.getSize())) {
basePrice = 12;
baseWeight = 0.6;
}
if ("2.3滴塑".equals(cailiao)) {
cailiao = "2.3";
}
price = Math.ceil(Math.max((basePrice * count * number), min_price) + 8 * number);
weight = df.format(width * length * 4.17 * dto.getCount() * number * 0.1 / 100000 * Double.parseDouble(cailiao));
}
double card_price = 0; double card_price = 0;
if (carft_list.contains("背卡")) { if (carft_list.contains("背卡")) {
String card_size = dto.getSize1(); String card_size = dto.getSize1();
@@ -5443,8 +5479,8 @@ public class ProductService {
Product pro = new Product(); Product pro = new Product();
pro.setCount(dto.getCount()); pro.setCount(dto.getCount());
pro.setNumber(dto.getNumber()); pro.setNumber(dto.getNumber());
pro.setWeight(df.format(width * length * 4.17 * dto.getCount() * 0.1 / 1000 * Double.parseDouble(cailiao))); pro.setWeight(weight);
pro.setPrice(Math.ceil(Math.max(price, min_price) + ((dto.getNumber() - 1) * 8) + card_price)); pro.setPrice(Math.ceil(price + card_price));
priceList.add(pro); priceList.add(pro);
return priceList; return priceList;
@@ -20,6 +20,10 @@
<hr> <hr>
<form class="layui-form"> <form class="layui-form">
<input type="hidden" name="proTypeValue" id="proTypeValue" class="layui-input" value="冰箱贴"/> <input type="hidden" name="proTypeValue" id="proTypeValue" class="layui-input" value="冰箱贴"/>
<div class="layui-form-item">
<input type="radio" lay-filter="kindValue" name="kindValue" value="冰箱贴" title="冰箱贴" checked="checked">
<input type="radio" lay-filter="kindValue" name="kindValue" value="对联冰箱贴" title="对联冰箱贴">
</div>
<p> <p>
材质 材质
</p> </p>
@@ -34,9 +38,14 @@
<div class="layui-form-item" id="ui_size"> <div class="layui-form-item" id="ui_size">
<input type="text" name="size" id="size" placeholder="格式:长*宽" class="layui-input" autocomplete="off"> <input type="text" name="size" id="size" placeholder="格式:长*宽" class="layui-input" autocomplete="off">
</div> </div>
<div class="layui-form-item" style="display: none">
<select name="size" id="selectSize" class="select" disabled>
<option value="70*80">拼版70*80 mm</option>
<option value="90*100">拼版90*100 mm</option>
</select>
</div>
<p> <p>
数量() 数量()
</p> </p>
<div class="layui-form-item"> <div class="layui-form-item">
<input type="text" name="count" id="count" placeholder="请输入整数" class="layui-input" autocomplete="off"> <input type="text" name="count" id="count" placeholder="请输入整数" class="layui-input" autocomplete="off">
@@ -52,7 +61,7 @@
板材厚度 板材厚度
</p> </p>
<div class="layui-form-item"> <div class="layui-form-item">
<select name="cailiao" class="select"> <select name="cailiao" id="cailiao" class="select">
<option value="2.3">2.3mm</option> <option value="2.3">2.3mm</option>
<option value="4.2">4.2mm</option> <option value="4.2">4.2mm</option>
</select> </select>
@@ -65,7 +74,7 @@
class="layui-input"> class="layui-input">
</div> </div>
<p> <p>
工艺 工艺<span style="font-size: 14px; color: red">一套为一款</span>
</p> </p>
<div class="layui-form-item" id='z4_craft'> <div class="layui-form-item" id='z4_craft'>
<div class="layui-input-block"> <div class="layui-input-block">
@@ -77,9 +86,11 @@
<input type="checkbox" name="craft" lay-filter="ui_craft" value="激光" title="激光" checked> <input type="checkbox" name="craft" lay-filter="ui_craft" value="激光" title="激光" checked>
<input type="checkbox" name="craft" lay-filter="ui_craft" value="CNC" title="CNC"> <input type="checkbox" name="craft" lay-filter="ui_craft" value="CNC" title="CNC">
</div> </div>
<div style="font-size: 14px; color: red">现货背卡尺寸:115*95mm</div>
<div class="layui-input-block"> <div class="layui-input-block">
背纸工艺: 背纸工艺:
<input type="checkbox" name="craft" lay-filter="ui_craft" value="背卡" title="背卡"> <input type="checkbox" name="craft" lay-filter="ui_craft" value="背卡" title="背卡">
<input type="checkbox" name="craft" lay-filter="ui_craft" value="现货背卡" title="现货背卡">
</div> </div>
<div class="layui-input-block beika" style="display: none"> <div class="layui-input-block beika" style="display: none">
背纸尺寸: 背纸尺寸:
@@ -106,6 +117,12 @@
disabled> disabled>
<input type="checkbox" name="craft" lay-filter="ui_craft" value="背卡异形模切" title="异形模切" disabled> <input type="checkbox" name="craft" lay-filter="ui_craft" value="背卡异形模切" title="异形模切" disabled>
</div> </div>
<div class="layui-input-block xhbeika" style="display: none">
背纸颜色:
<input type="checkbox" name="craft" lay-filter="ui_craft" value="红色款" title="红色款" checked disabled>
<input type="checkbox" name="craft" lay-filter="ui_craft" value="黄色款" title="黄色款" disabled>
</div>
</div> </div>
<hr> <hr>
<div class="layui-form-item"> <div class="layui-form-item">
@@ -154,8 +171,12 @@
var remark = " "; var remark = " ";
const carft_list1 = ["激光", "CNC"]; const carft_list1 = ["激光", "CNC"];
const carft_list2 = ["背卡直角裁切", "背卡异形模切"]; const carft_list2 = ["背卡直角裁切", "背卡异形模切"];
const carft_list3 = ["背卡", "现货背卡"];
const carft_list4 = ["红色款", "黄色款"];
getImages()
// 清空轮播图 // 清空轮播图
function getImages() {
$("#carousel").empty(); $("#carousel").empty();
$("#remark").empty(); $("#remark").empty();
$(".ui_feb").show(); $(".ui_feb").show();
@@ -165,7 +186,7 @@
type: "GET", type: "GET",
data: { data: {
proTypeValue: $("#proTypeValue").val(), proTypeValue: $("#proTypeValue").val(),
kindValue: $('input[name="kindValue"]').val() kindValue: $('input[name="kindValue"]:checked').val()
}, },
success: function (result) { success: function (result) {
for (let i = 0; i < result.length; i++) { for (let i = 0; i < result.length; i++) {
@@ -192,8 +213,44 @@
} }
} }
}); });
}
form.on("radio(kindValue)", function (data) {
let kindValue = data.value;
let cailiaoHtml = `<option value="2.3">2.3mm</option>
<option value="4.2">4.2mm</option>`;
$("#ui_size").show();
$("#ui_size").find("input").attr("disabled", false);
$("#selectSize").parent().hide();
$("#selectSize").attr("disabled", true);
$("input[name='craft'][value='激光']").prop("checked", true);
$("input[name='craft'][value='CNC']").prop("checked", false);
$("input[name='craft'][value='现货背卡']").prop("checked", false);
$(".xhbeika").hide();
$(".xhbeika").find("input").prop("disabled", true)
if (kindValue == "对联冰箱贴") {
cailiaoHtml = `<option value="2.3">2.3mm</option>
<option value="2.3滴塑">2.3mm滴塑</option>`;
$("#ui_size").hide();
$("#ui_size").find("input").attr("disabled", true);
$("#selectSize").parent().show();
$("#selectSize").attr("disabled", false);
$("input[name='craft'][value='现货背卡']").prop("checked", true);
$("input[name='craft'][value='背卡']").prop("checked", false);
$(".beika").hide();
$(".beika").find("input").prop("disabled", true)
$(".xhbeika").show();
$(".xhbeika").find("input").prop("disabled", false)
}
$("#cailiao").empty();
$("#cailiao").append(cailiaoHtml);
getImages()
form.render();
})
form.on('checkbox(ui_craft)', function (data) { form.on('checkbox(ui_craft)', function (data) {
let craft_list = []; let craft_list = [];
let kindValue = $('input[name="kindValue"]:checked').val();
craft_list.push($("select[name='craft'] option:selected").val()); craft_list.push($("select[name='craft'] option:selected").val());
$("input[name='craft']:checked").each(function () { $("input[name='craft']:checked").each(function () {
if (!$(this).is(':disabled')) { if (!$(this).is(':disabled')) {
@@ -208,6 +265,13 @@
form.render(); form.render();
return false; return false;
} }
if (data.value == "CNC" && kindValue == "对联冰箱贴") {
$(data.elem).prop("checked", false);
layer.msg("对联冰箱贴CNC工艺不能选择", {offset: ['300px', '300px']}, function () {
});
form.render();
return false;
}
const carft1 = carft_list1.filter(craft => craft_list.includes(craft)); const carft1 = carft_list1.filter(craft => craft_list.includes(craft));
if (carft1.length > 1) { if (carft1.length > 1) {
$(data.elem).prop("checked", false); $(data.elem).prop("checked", false);
@@ -224,6 +288,29 @@
form.render(); form.render();
return false; return false;
} }
if (data.value == "现货背卡" && kindValue == "冰箱贴") {
$(data.elem).prop("checked", false);
layer.msg("冰箱贴现货背卡工艺不能选择", {offset: ['300px', '300px']}, function () {
});
form.render();
return false;
}
const carft3 = carft_list3.filter(craft => craft_list.includes(craft));
if (carft3.length > 1) {
$(data.elem).prop("checked", false);
layer.msg("背卡工艺不能同时选择", {offset: ['300px', '300px']}, function () {
});
form.render();
return false;
}
const carft4 = carft_list4.filter(craft => craft_list.includes(craft));
if (carft4.length > 1) {
$(data.elem).prop("checked", false);
layer.msg("背卡颜色不能同时选择", {offset: ['300px', '300px']}, function () {
});
form.render();
return false;
}
if (data.value == "背卡") { if (data.value == "背卡") {
$(".beika").hide(); $(".beika").hide();
$(".beika").find("input").prop("disabled", true) $(".beika").find("input").prop("disabled", true)
@@ -232,6 +319,14 @@
$(".beika").find("input").prop("disabled", false) $(".beika").find("input").prop("disabled", false)
} }
} }
if (data.value == "现货背卡") {
$(".xhbeika").hide();
$(".xhbeika").find("input").prop("disabled", true)
if (data.elem.checked) {
$(".xhbeika").show();
$(".xhbeika").find("input").prop("disabled", false)
}
}
form.render(); form.render();
}) })
@@ -239,17 +334,23 @@
form.on('submit(acount_btn)', function (data) { form.on('submit(acount_btn)', function (data) {
var number = $("#number").val(); var number = $("#number").val();
var size = $("#size").val(); var size = $("#size").val();
let kindValue = $('input[name="kindValue"]:checked').val();
var count = $("#count").val(); var count = $("#count").val();
var kind = $("select[name='kind'] option:selected").text(); var kind = $("select[name='kind'] option:selected").text();
let size1 = $("#size1").val(); let size1 = $("#size1").val();
let shuliang = $("#shuliang").val(); let shuliang = $("#shuliang").val();
let pinzhong = $("#pinzhong").val(); let pinzhong = $("#pinzhong").val();
var craft = []; var craft = [];
if (kindValue == "对联冰箱贴") {
size = $("#selectSize option:selected").val();
}
if (size == "") { if (size == "") {
layer.msg('请填写尺寸!', {offset: ['300px', '300px']}, function () { layer.msg('请填写尺寸!', {offset: ['300px', '300px']}, function () {
}); });
return false; return false;
} }
if (kindValue == "冰箱贴") {
if ((size.split("*")[0] > 16 || size.split("*")[1] > 16)) { if ((size.split("*")[0] > 16 || size.split("*")[1] > 16)) {
layer.msg('最大尺寸16*16cm', {offset: ['300px', '300px']}, function () { layer.msg('最大尺寸16*16cm', {offset: ['300px', '300px']}, function () {
}); });
@@ -260,6 +361,8 @@
}); });
return false; return false;
} }
}
craft.push($("#xiangwei select[name='craft'] option:selected").val()); craft.push($("#xiangwei select[name='craft'] option:selected").val());
$("input:checkbox[name='craft']:checked").each(function (i) { $("input:checkbox[name='craft']:checked").each(function (i) {
// 没有被禁用的工艺加到arr中 // 没有被禁用的工艺加到arr中
@@ -308,19 +411,24 @@
return false; return false;
} }
var data = result.data.proList; var data = result.data.proList;
let unit = "套";
var span_result = '冰箱贴 - ' + kind + '-' + $("select[name='cailiao'] option:selected").text() + ' - ' + size + ' CM (同款内容)\n'; if (kindValue == "冰箱贴") {
var span_result = kindValue + ' - ' + kind + '-' + $("select[name='cailiao'] option:selected").text() + ' - ' + size + ' CM (同款内容)\n';
unit = "个"
} else {
var span_result = kindValue + ' - ' + kind + '-' + $("select[name='cailiao'] option:selected").text() + ' - 拼版' + size + ' MM (同款内容)\n';
}
span_result += `工艺:` + craft.join(",") + '\n'; span_result += `工艺:` + craft.join(",") + '\n';
if (number > 1) { if (number > 1) {
for (let i = 0; i < data.length; i++) { for (let i = 0; i < data.length; i++) {
span_result += number + '款 各' + data[i].count + ",共" + data[i].price + "元" + '\n' span_result += number + '款 各' + data[i].count + unit + ",共" + data[i].price + "元" + '\n'
data[i].number = number; data[i].number = number;
} }
} else { } else {
for (let i = 0; i < data.length; i++) { for (let i = 0; i < data.length; i++) {
span_result += number + '款 ' + data[i].count + ",共" + data[i].price + "元" + '\n' span_result += number + '款 ' + data[i].count + unit + ",共" + data[i].price + "元" + '\n'
data[i].number = number; data[i].number = number;
} }
} }