|
@@ -14,6 +14,7 @@ import com.xxl.job.core.handler.annotation.XxlJob;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
import org.springframework.util.StringUtils;
|
|
|
|
|
@@ -53,6 +54,12 @@ public class ContentPlatformDatastatJob {
|
|
|
@Autowired
|
|
|
private ContentPlatformPlanService planService;
|
|
|
|
|
|
+ @Value("${unit.price.min:0.1}")
|
|
|
+ private Double unitPriceMin;
|
|
|
+
|
|
|
+ @Value("${unit.price.max:0.2}")
|
|
|
+ private Double unitPriceMax;
|
|
|
+
|
|
|
|
|
|
@XxlJob("syncContentPlatformGzhDatastatJob")
|
|
|
public ReturnT<String> syncContentPlatformGzhDatastatJob(String param) {
|
|
@@ -181,7 +188,8 @@ public class ContentPlatformDatastatJob {
|
|
|
BigDecimal rounded = num.multiply(new BigDecimal(10)).setScale(2, RoundingMode.HALF_UP);
|
|
|
item.setScore(rounded.doubleValue());
|
|
|
BigDecimal unitPrice = num.multiply(new BigDecimal(arpu)).multiply(BigDecimal.valueOf(account.getPrice()))
|
|
|
- .setScale(2, RoundingMode.HALF_UP);
|
|
|
+ .setScale(2, RoundingMode.HALF_UP)
|
|
|
+ .min(BigDecimal.valueOf(unitPriceMax)).max(BigDecimal.valueOf(unitPriceMin));
|
|
|
item.setUnitPrice(unitPrice.doubleValue());
|
|
|
BigDecimal settlementAmount = unitPrice.multiply(new BigDecimal(firstLevelCount));
|
|
|
item.setSettlementAmount(settlementAmount.doubleValue());
|
|
@@ -324,7 +332,8 @@ public class ContentPlatformDatastatJob {
|
|
|
BigDecimal rounded = num.multiply(new BigDecimal(10)).setScale(2, RoundingMode.HALF_UP);
|
|
|
item.setScore(rounded.doubleValue());
|
|
|
BigDecimal unitPrice = num.multiply(new BigDecimal(arpu)).multiply(BigDecimal.valueOf(account.getPrice()))
|
|
|
- .setScale(2, RoundingMode.HALF_UP);
|
|
|
+ .setScale(2, RoundingMode.HALF_UP)
|
|
|
+ .min(BigDecimal.valueOf(unitPriceMax)).max(BigDecimal.valueOf(unitPriceMin));
|
|
|
item.setUnitPrice(unitPrice.doubleValue());
|
|
|
BigDecimal settlementAmount = unitPrice.multiply(new BigDecimal(firstLevelCount));
|
|
|
item.setSettlementAmount(settlementAmount.doubleValue());
|
|
@@ -517,7 +526,8 @@ public class ContentPlatformDatastatJob {
|
|
|
BigDecimal rounded = num.multiply(new BigDecimal(10)).setScale(2, RoundingMode.HALF_UP);
|
|
|
item.setScore(rounded.doubleValue());
|
|
|
BigDecimal unitPrice = num.multiply(new BigDecimal(arpu)).multiply(BigDecimal.valueOf(account.getPrice()))
|
|
|
- .setScale(2, RoundingMode.HALF_UP);
|
|
|
+ .setScale(2, RoundingMode.HALF_UP)
|
|
|
+ .min(BigDecimal.valueOf(unitPriceMax)).max(BigDecimal.valueOf(unitPriceMin));
|
|
|
item.setUnitPrice(unitPrice.doubleValue());
|
|
|
BigDecimal settlementAmount = unitPrice.multiply(new BigDecimal(firstLevelCount));
|
|
|
item.setSettlementAmount(settlementAmount.doubleValue());
|
|
@@ -663,7 +673,8 @@ public class ContentPlatformDatastatJob {
|
|
|
BigDecimal rounded = num.multiply(new BigDecimal(10)).setScale(2, RoundingMode.HALF_UP);
|
|
|
item.setScore(rounded.doubleValue());
|
|
|
BigDecimal unitPrice = num.multiply(new BigDecimal(arpu)).multiply(BigDecimal.valueOf(account.getPrice()))
|
|
|
- .setScale(2, RoundingMode.HALF_UP);
|
|
|
+ .setScale(2, RoundingMode.HALF_UP)
|
|
|
+ .min(BigDecimal.valueOf(unitPriceMax)).max(BigDecimal.valueOf(unitPriceMin));
|
|
|
item.setUnitPrice(unitPrice.doubleValue());
|
|
|
BigDecimal settlementAmount = unitPrice.multiply(new BigDecimal(firstLevelCount));
|
|
|
item.setSettlementAmount(settlementAmount.doubleValue());
|
|
@@ -691,7 +702,8 @@ public class ContentPlatformDatastatJob {
|
|
|
BigDecimal rounded = num.multiply(new BigDecimal(10)).setScale(2, RoundingMode.HALF_UP);
|
|
|
item.setScore(rounded.doubleValue());
|
|
|
BigDecimal unitPrice = num.multiply(new BigDecimal(arpu)).multiply(BigDecimal.valueOf(account.getPrice()))
|
|
|
- .setScale(2, RoundingMode.HALF_UP);
|
|
|
+ .setScale(2, RoundingMode.HALF_UP)
|
|
|
+ .min(BigDecimal.valueOf(unitPriceMax)).max(BigDecimal.valueOf(unitPriceMin));
|
|
|
item.setUnitPrice(unitPrice.doubleValue());
|
|
|
BigDecimal settlementAmount = unitPrice.multiply(new BigDecimal(firstLevelCount));
|
|
|
item.setSettlementAmount(settlementAmount.doubleValue());
|