edit
This commit is contained in:
@@ -399,7 +399,7 @@ public class ProductService {
|
||||
|
||||
// 选择少数量/打印不干胶按钮
|
||||
if ("少数量".contentEquals(dto.getStickerKind()) || "专版打印".contentEquals(dto.getStickerKind())) {
|
||||
stickersList = lessSticker(dto, kind, number, width, length, count, stickersList);
|
||||
stickersList = lessSticker(dto, kind, number, width, length, count, stickersList, role);
|
||||
|
||||
if (stickersList.get(0) == null) {
|
||||
return null;
|
||||
@@ -1364,20 +1364,37 @@ public class ProductService {
|
||||
//第二款开始的设计费按照式设计内容
|
||||
if (number > 1) {
|
||||
double desFee = 0;
|
||||
if (dto.getP() == 1) {
|
||||
desFee = 0.6;
|
||||
} else if (dto.getP() == 2 || dto.getP() == 3) {
|
||||
desFee = 0.8;
|
||||
} else if (dto.getP() == 4) {
|
||||
desFee = 1.2;
|
||||
} else if (dto.getP() == 5) {
|
||||
desFee = 2;
|
||||
if (role.indexOf("1045") == -1) {
|
||||
if (number == 2) {
|
||||
desFee = 5.5;
|
||||
}
|
||||
if (number == 3) {
|
||||
desFee = 5.5 + 3.5;
|
||||
}
|
||||
if (number > 3) {
|
||||
desFee = 5.5 + 3.5 + 2.5 * (number - 3);
|
||||
}
|
||||
for (Product product : priceList) {
|
||||
product.setPrice(Math.ceil(product.getPrice() + desFee));
|
||||
}
|
||||
} else {
|
||||
desFee = 5;
|
||||
}
|
||||
for (Product product : priceList) {
|
||||
product.setPrice(Math.floor(product.getPrice() + desFee * (number - 1)));
|
||||
|
||||
if (dto.getP() == 1) {
|
||||
desFee = 0.6;
|
||||
} else if (dto.getP() == 2 || dto.getP() == 3) {
|
||||
desFee = 0.8;
|
||||
} else if (dto.getP() == 4) {
|
||||
desFee = 1.2;
|
||||
} else if (dto.getP() == 5) {
|
||||
desFee = 2;
|
||||
} else {
|
||||
desFee = 5;
|
||||
}
|
||||
for (Product product : priceList) {
|
||||
product.setPrice(Math.floor(product.getPrice() + desFee * (number - 1)));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
return priceList;
|
||||
} else {
|
||||
@@ -2320,7 +2337,6 @@ public class ProductService {
|
||||
} else {
|
||||
priceList = new PriceUtils().UVStickerPrice(length, width, count, number, dto.getCraftMo(), dto.getCraft());
|
||||
}
|
||||
|
||||
if (priceList.get(0).getCount() != count) {
|
||||
priceList.get(0).setCount(count);
|
||||
}
|
||||
@@ -2655,37 +2671,69 @@ public class ProductService {
|
||||
}
|
||||
}
|
||||
}
|
||||
if (role.indexOf("1045") == -1) {
|
||||
if (number > 1) {
|
||||
double designFee = 0;
|
||||
if (!dto.getProTypeLabel().equals("婚礼报纸") && !dto.getProTypeLabel().equals("菜单")) {
|
||||
if (number == 2) {
|
||||
designFee = 5.5;
|
||||
}
|
||||
if (number == 3) {
|
||||
designFee = 5.5 + 3.5;
|
||||
}
|
||||
if (number > 3) {
|
||||
designFee = 5.5 + 3.5 + 2.5 * (number - 3);
|
||||
}
|
||||
}
|
||||
if (dto.getProTypeLabel().equals("菜单") || dto.getProTypeLabel().equals("婚礼报纸")) {
|
||||
if (number == 2) {
|
||||
designFee = 17;
|
||||
}
|
||||
if (number == 3) {
|
||||
designFee = 17 + 17;
|
||||
}
|
||||
if (number > 3) {
|
||||
designFee = 17 + 17 + 12 * (number - 3);
|
||||
}
|
||||
}
|
||||
|
||||
//第二款开始的设计费按照式设计内容
|
||||
if (!dto.getProTypeLabel().equals("婚礼报纸") && !dto.getProTypeLabel().equals("菜单") && number > 1) {
|
||||
double desFee = 0;
|
||||
if (dto.getP() == 1) {
|
||||
desFee = 0.6;
|
||||
} else if (dto.getP() == 2 || dto.getP() == 3) {
|
||||
desFee = 0.8;
|
||||
} else if (dto.getP() == 4) {
|
||||
desFee = 1.2;
|
||||
} else if (dto.getP() == 5) {
|
||||
desFee = 2;
|
||||
} else {
|
||||
desFee = 18;
|
||||
int min = getNumAdd((length - 4) / 10, (width - 4) / 10);
|
||||
if (min == 1) {
|
||||
desFee = 7;
|
||||
}
|
||||
if (min == 2) {
|
||||
desFee = 10;
|
||||
}
|
||||
if (min == 3) {
|
||||
desFee = 14;
|
||||
}
|
||||
if (min == 4) {
|
||||
desFee = 18;
|
||||
for (Product product : priceList) {
|
||||
product.setPrice(Math.ceil(product.getPrice() + designFee));
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
||||
for (Product product : priceList) {
|
||||
product.setPrice(Math.floor(product.getPrice() + desFee * (number - 1)));
|
||||
//第二款开始的设计费按照式设计内容
|
||||
if (!dto.getProTypeLabel().equals("婚礼报纸") && !dto.getProTypeLabel().equals("菜单") && number > 1) {
|
||||
double desFee = 0;
|
||||
if (dto.getP() == 1) {
|
||||
desFee = 0.6;
|
||||
} else if (dto.getP() == 2 || dto.getP() == 3) {
|
||||
desFee = 0.8;
|
||||
} else if (dto.getP() == 4) {
|
||||
desFee = 1.2;
|
||||
} else if (dto.getP() == 5) {
|
||||
desFee = 2;
|
||||
} else {
|
||||
desFee = 18;
|
||||
int min = getNumAdd((length - 4) / 10, (width - 4) / 10);
|
||||
if (min == 1) {
|
||||
desFee = 7;
|
||||
}
|
||||
if (min == 2) {
|
||||
desFee = 10;
|
||||
}
|
||||
if (min == 3) {
|
||||
desFee = 14;
|
||||
}
|
||||
if (min == 4) {
|
||||
desFee = 18;
|
||||
}
|
||||
}
|
||||
|
||||
for (Product product : priceList) {
|
||||
product.setPrice(Math.floor(product.getPrice() + desFee * (number - 1)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3101,19 +3149,35 @@ public class ProductService {
|
||||
|
||||
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;
|
||||
if (dto.getP() == 1 || dto.getP() == 2 || dto.getP() == 3) {
|
||||
desFee = 3;
|
||||
} else if (dto.getP() == 4) {
|
||||
desFee = 5;
|
||||
} else if (dto.getP() == 5) {
|
||||
desFee = 6;
|
||||
if (role.indexOf("1045") == -1) {
|
||||
if (number == 2) {
|
||||
desFee = 11;
|
||||
}
|
||||
if (number == 3) {
|
||||
desFee = 11 + 11;
|
||||
}
|
||||
if (number > 3) {
|
||||
desFee = 11 + 11 + 11 * (number - 3);
|
||||
}
|
||||
for (Product product : priceList) {
|
||||
product.setPrice(Math.ceil(product.getPrice() + desFee));
|
||||
}
|
||||
} else {
|
||||
desFee = 11;
|
||||
if (dto.getP() == 1 || dto.getP() == 2 || dto.getP() == 3) {
|
||||
desFee = 3;
|
||||
} else if (dto.getP() == 4) {
|
||||
desFee = 5;
|
||||
} else if (dto.getP() == 5) {
|
||||
desFee = 6;
|
||||
} else {
|
||||
desFee = 11;
|
||||
}
|
||||
|
||||
for (Product product : priceList) {
|
||||
product.setPrice(Math.floor(product.getPrice() + desFee * (number - 1)));
|
||||
}
|
||||
}
|
||||
|
||||
for (Product product : priceList) {
|
||||
product.setPrice(Math.floor(product.getPrice() + desFee * (number - 1)));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -3319,7 +3383,7 @@ public class ProductService {
|
||||
* if (priceList.size() >= 4) { priceList = priceList.subList(0, 4); }
|
||||
*/
|
||||
String[] ztCraft = {"背胶"};
|
||||
priceList = ZsPrice.getSmPrice(count, length, width, priceList, number, ztCraft, dto);
|
||||
priceList = ZsPrice.getSmPrice(count, length, width, priceList, number, ztCraft, dto, role);
|
||||
for (Product product : priceList) {
|
||||
if (dto.getKindValue().equals("0") || dto.getKindValue().equals("10")) {
|
||||
wei = 0.38;
|
||||
@@ -3792,7 +3856,7 @@ public class ProductService {
|
||||
product.setPrice(Math.floor(product.getPrice() * number));
|
||||
}
|
||||
} else {// 打印的价格和pvc不干胶打印价格一样--23.8.17更新后取消这个
|
||||
priceList = lessSticker(dto, proType, number, width, length, count, priceList);
|
||||
priceList = lessSticker(dto, proType, number, width, length, count, priceList, role);
|
||||
return priceList;
|
||||
}
|
||||
// 重量
|
||||
@@ -3932,7 +3996,7 @@ public class ProductService {
|
||||
return priceList;
|
||||
case "数码PVC":
|
||||
// 价格按照大纸裁
|
||||
priceList = ZsPrice.getSmPrice(count, length, width, priceList, number, dto.getCraft(), dto);
|
||||
priceList = ZsPrice.getSmPrice(count, length, width, priceList, number, dto.getCraft(), dto, role);
|
||||
for (Product product : priceList) {
|
||||
if (dto.getKindValue().equals("1") || dto.getKindValue().equals("2") || dto.getKindValue().equals("3")) {
|
||||
wei = 0.38;
|
||||
@@ -4348,7 +4412,7 @@ public class ProductService {
|
||||
}
|
||||
|
||||
private List<Product> lessSticker(Product dto, String kind, Integer number, Double width, Double length,
|
||||
int count, List<Product> stickersList) {
|
||||
int count, List<Product> stickersList, String role) {
|
||||
double price = 0.0;
|
||||
// 一张大纸收费
|
||||
double addPrice = 0.0;
|
||||
@@ -4418,22 +4482,36 @@ public class ProductService {
|
||||
}
|
||||
if (number > 1) {
|
||||
double desFee = 0;
|
||||
if (dto.getP() == 1) {
|
||||
desFee = 0.6;
|
||||
} else if (dto.getP() == 2 || dto.getP() == 3) {
|
||||
desFee = 0.8;
|
||||
} else if (dto.getP() == 4) {
|
||||
desFee = 1.2;
|
||||
} else if (dto.getP() == 5) {
|
||||
desFee = 2;
|
||||
if (role.indexOf("1045") == -1) {
|
||||
if (number == 2) {
|
||||
desFee = 3.5;
|
||||
}
|
||||
if (number == 3) {
|
||||
desFee = 3.5 + 2.5;
|
||||
}
|
||||
if (number > 3) {
|
||||
desFee = 3.5 + 2.5 + 1.5 * (number - 3);
|
||||
}
|
||||
} else {
|
||||
desFee = 5;
|
||||
if (dto.getP() == 1) {
|
||||
desFee = 0.6;
|
||||
} else if (dto.getP() == 2 || dto.getP() == 3) {
|
||||
desFee = 0.8;
|
||||
} else if (dto.getP() == 4) {
|
||||
desFee = 1.2;
|
||||
} else if (dto.getP() == 5) {
|
||||
desFee = 2;
|
||||
} else {
|
||||
desFee = 5;
|
||||
}
|
||||
desFee = desFee * number;
|
||||
}
|
||||
|
||||
for (Product product : stickersList) {
|
||||
if ("0".equals(kind) && "纯烫金".equals(dto.getCraftTang())) {
|
||||
product.setPrice(product.getPrice() * number);
|
||||
} else {
|
||||
product.setPrice(Math.floor(product.getPrice() + desFee * number));
|
||||
product.setPrice(Math.ceil(product.getPrice() + desFee));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ public class ZsPrice {
|
||||
return list;
|
||||
}
|
||||
|
||||
public static List<Product> getSmPrice(int count, Double length, Double width, List<Product> list, Integer number, String[] craft, Product dto) {
|
||||
public static List<Product> getSmPrice(int count, Double length, Double width, List<Product> list, Integer number, String[] craft, Product dto, String role) {
|
||||
double price = 60;
|
||||
double l = 438.0;
|
||||
double w = 304.0;
|
||||
@@ -68,18 +68,33 @@ public class ZsPrice {
|
||||
|
||||
if (number > 1) {
|
||||
double desFee = 0;
|
||||
if (dto.getP() == 1 || dto.getP() == 2 || dto.getP() == 3) {
|
||||
desFee = 3;
|
||||
} else if (dto.getP() == 4) {
|
||||
desFee = 5;
|
||||
} else if (dto.getP() == 5) {
|
||||
desFee = 6;
|
||||
|
||||
if (role.indexOf("1045") == -1) {
|
||||
if (number == 2) {
|
||||
desFee = 5.75;
|
||||
}
|
||||
if (number == 3) {
|
||||
desFee = 5.75 + 3.75;
|
||||
}
|
||||
if (number > 3) {
|
||||
desFee = 5.75 + 3.75 + 2.75 * (number - 3);
|
||||
}
|
||||
price += desFee;
|
||||
} else {
|
||||
desFee = 8;
|
||||
if (dto.getP() == 1 || dto.getP() == 2 || dto.getP() == 3) {
|
||||
desFee = 3;
|
||||
} else if (dto.getP() == 4) {
|
||||
desFee = 5;
|
||||
} else if (dto.getP() == 5) {
|
||||
desFee = 6;
|
||||
} else {
|
||||
desFee = 8;
|
||||
}
|
||||
price += desFee * (number - 1);
|
||||
}
|
||||
price += desFee * (number - 1);
|
||||
}
|
||||
|
||||
|
||||
Product pro = new Product();
|
||||
pro.setPrice(Math.ceil(price));
|
||||
pro.setCount(count);
|
||||
|
||||
Reference in New Issue
Block a user