137 lines
5.8 KiB
Java
137 lines
5.8 KiB
Java
package lingtao.net.util;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
import lingtao.net.bean.Product;
|
|
|
|
/**
|
|
* 易碎标价格
|
|
*/
|
|
public class YiSBStickersPrice {
|
|
|
|
int bigCountArr[] = { 500, 1000, 2000, 3000, 5000, 10000, 20000, 30000, 40000, 50000, 60000, 70000, 80000, 90000,
|
|
100000 };
|
|
|
|
/**
|
|
* 易碎标遍历添加价格
|
|
*/
|
|
private List<Product> bigSizeAcountPrice(int count, Double area, List<Product> list, Double[] priceArr) {
|
|
Product pro = new Product();
|
|
if (area > 0.0001) {
|
|
if (count > bigCountArr[bigCountArr.length - 1]) {
|
|
pro.setCount(count);
|
|
pro.setPrice(Math.ceil(area * count * priceArr[bigCountArr.length - 1]));
|
|
list.add(pro);
|
|
}
|
|
for (int i = 0; i < bigCountArr.length; i++) {
|
|
if (bigCountArr[i] < count) {
|
|
continue;
|
|
}
|
|
pro = new Product();
|
|
pro.setCount(bigCountArr[i]);
|
|
pro.setPrice(Math.ceil(area * bigCountArr[i] * priceArr[i]));
|
|
list.add(pro);
|
|
}
|
|
} else {
|
|
if (count > bigCountArr[bigCountArr.length - 1]) {
|
|
pro.setCount(count);
|
|
pro.setPrice(priceArr[bigCountArr.length - 1]);
|
|
list.add(pro);
|
|
}
|
|
for (int i = 0; i < bigCountArr.length; i++) {
|
|
if (bigCountArr[i] < count) {
|
|
continue;
|
|
}
|
|
pro = new Product();
|
|
pro.setCount(bigCountArr[i]);
|
|
pro.setPrice(priceArr[i]);
|
|
list.add(pro);
|
|
}
|
|
}
|
|
return list;
|
|
}
|
|
|
|
public List<Product> getPrice(int count, Double area) {
|
|
List<Product> list = new ArrayList<Product>();
|
|
if (area > 0 && area <= 0.0001) {
|
|
Double priceArrA[] = { 150.0, 160.0, 170.0, 180.0, 200.0, 260.0, 320.0, 360.0, 400.0, 480.0, 550.0, 620.0,
|
|
680.0, 740.0, 820.0, 880.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.0001 && area <= 0.0004) {
|
|
Double priceArrA[] = { 650.0, 400.0, 260.0, 200.0, 150.0, 110.0, 80.0, 70.0, 65.0, 62.0, 60.0, 58.0, 56.0,
|
|
54.0, 52.0, 50.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.0004 && area <= 0.0006) {
|
|
Double priceArrA[] = { 440.0, 280.0, 175.0, 135.0, 103.0, 75.0, 56.0, 49.5, 46.0, 44.0, 42.5, 41.5, 40.5,
|
|
39.5, 38.5, 38.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.0006 && area <= 0.0008) {
|
|
Double priceArrA[] = { 372.0, 230.0, 159.0, 130.0, 105.0, 87.0, 65.0, 57.5, 53.5, 51.0, 49.0, 47.0, 46.0,
|
|
45.0, 44.0, 43.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.0008 && area <= 0.001) {
|
|
Double priceArrA[] = { 320.0, 200.0, 135.0, 111.0, 92.6, 77.0, 61.5, 56.0, 53.0, 51.0, 49.5, 49.0, 48.0,
|
|
47.0, 46.0, 46.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.001 && area <= 0.0012) {
|
|
Double priceArrA[] = { 277.0, 171.0, 115.0, 95.0, 80.0, 65.8, 52.5, 48.0, 45.8, 44.3, 43.4, 42.7, 42.2, 41.8,
|
|
41.5, 41.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.0012 && area <= 0.0014) {
|
|
Double priceArrA[] = { 243.0, 150.0, 101.0, 83.3, 75.0, 61.8, 48.8, 44.4, 42.1, 40.6, 39.7, 39.0, 38.5, 38.0,
|
|
37.6, 37.5 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.0014 && area <= 0.0016) {
|
|
Double priceArrA[] = { 220.0, 135.0, 91.0, 75.0, 64.0, 56.2, 45.3, 41.6, 39.8, 38.8, 37.9, 37.4, 37.0, 36.6,
|
|
36.4, 36.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.0016 && area <= 0.0025) {
|
|
Double priceArrA[] = { 210.0, 130.0, 86.0, 70.0, 58.6, 51.5, 41.8, 38.1, 36.3, 35.2, 34.5, 33.9, 33.5, 33.1,
|
|
33.0, 33.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.0025 && area <= 0.0035) {
|
|
Double priceArrA[] = { 200.0, 123.0, 81.0, 65.3, 55.0, 50.0, 39.2, 35.5, 33.7, 32.5, 31.8, 31.2, 30.8, 30.5,
|
|
30.4, 30.3 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.0035 && area <= 0.0045) {
|
|
Double priceArrA[] = { 195.0, 121.0, 79.0, 63.9, 53.4, 48.7, 37.5, 33.75, 31.9, 30.75, 30.0, 29.4, 29.0, 28.7,
|
|
28.5, 28.5 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.0045 && area <= 0.0084) {
|
|
Double priceArrA[] = { 195.0, 119.6, 79.0, 63.0, 53.0, 48.5, 37.0, 33.0, 31.4, 30.0, 30.0, 29.0, 28.6, 28.2,
|
|
28.3, 28.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.0084 && area <= 0.012) {
|
|
Double priceArrA[] = { 90.0, 60.0, 50.0, 45.0, 38.0, 38.0, 35.0, 35.0, 35.0, 35.0, 35.0, 35.0, 35.0, 35.0,
|
|
35.0, 35.0, };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.012 && area <= 0.015) {
|
|
Double priceArrA[] = { 80.0, 55.0, 45.0, 40.0, 35.0, 35.0, 34.0, 34.0, 34.0, 34.0, 34.0, 34.0, 34.0, 34.0,
|
|
34.0, 34.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.015 && area <= 0.02) {
|
|
Double priceArrA[] = { 65.0, 50.0, 40.0, 36.0, 33.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0,
|
|
30.0, 30.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArrA);
|
|
} else if (area > 0.02 && area <= 0.04) {
|
|
Double priceArr[] = { 55.0, 45.0, 35.0, 35.0, 32.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0,
|
|
30.0, 30.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArr);
|
|
} else if (area > 0.04 && area <= 0.06) {
|
|
Double priceArr[] = { 50.0, 40.0, 35.0, 35.0, 30.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0,
|
|
26.0, 26.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArr);
|
|
} else if (area > 0.06 && area <= 0.1) {
|
|
Double priceArr[] = { 45.0, 37.0, 35.0, 35.0, 30.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0,
|
|
26.0, 26.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArr);
|
|
} else if (area > 0.1 && area <= 0.2) {
|
|
Double priceArr[] = { 40.0, 35.0, 30.0, 30.0, 27.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0,
|
|
26.0, 26.0 };
|
|
list = bigSizeAcountPrice(count, area, list, priceArr);
|
|
}
|
|
return list;
|
|
}
|
|
}
|