Commit f5cf2cbd by lzxry

无限流量计算区间流量

parent 2d0a5e89
......@@ -315,7 +315,7 @@ public class ShareIncomeServiceImpl implements ShareIncomeService {
BigDecimal flow = tkioFlowRepository.sumFlowByDsAndContractCodes(startDate,endDate,codes);
double i1 = flow == null ? 0 : flow.divide(new BigDecimal(10000.0)).setScale(4, BigDecimal.ROUND_HALF_UP).doubleValue();
if(j>0){//上一份合同超出的流量
if(j>0){//上一份合同超出的流量算在当前合同上(肯定在签订日之前)合同的开始日(补充协议的开始日就是原合同的开始日,结束日为上一个合同的下一个签订日)
BigDecimal bigDecimal = tkioFlowRepository.sumFlowByContractCodeAndDs(contractsArray[j].getContractCode(), contractsArray[j].getStartDate(), contractsArray[j - 1].getNextSignedDate());
double i = bigDecimal == null ? 0 : bigDecimal.divide(new BigDecimal(10000.0)).setScale(4, BigDecimal.ROUND_HALF_UP).doubleValue();
i1+=i;
......@@ -568,6 +568,19 @@ public class ShareIncomeServiceImpl implements ShareIncomeService {
//区间分摊总收入
contract.setIntervaIncomeShare(shareMultiply(dayShareIncome.multiply(new BigDecimal(100L)), new BigDecimal(daysIncom), 0));
//无限流量套餐合同的区间点击数
ArrayList<String> codes = new ArrayList<>();
for (int k = 0; k <= i; k++) {
codes.add(contractsArray[k].getContractCode());
}
BigDecimal clickNumLimit = tkioFlowRepository.sumFlowByDsAndContractCodes(usePart[0].toString("yyyy-MM-dd"), usePart[1].toString("yyyy-MM-dd"), codes);
long clickFlowLimit = clickNumLimit==null?0L:clickNumLimit.longValue();
if(clickFlowLimit!=0){
contract.setClickFlow(new BigDecimal(clickFlowLimit / 10000.0).setScale(4,BigDecimal.ROUND_HALF_UP).doubleValue());
}else{
contract.setClickFlow(0.0);
}
Long adjustmentFund = 0L;//调整金
if (isLateContract) {
......@@ -605,10 +618,6 @@ public class ShareIncomeServiceImpl implements ShareIncomeService {
}
ArrayList<String> codes = new ArrayList<>();
for (int k = 0; k <= i; k++) {
codes.add(contractsArray[k].getContractCode());
}
//处理上一份合同
BigDecimal clickNum = tkioFlowRepository.sumFlowByDsAndContractCodes(contractPart[0].toString("yyyy-MM-dd"), creatPoints[1].plusDays(-1).toString("yyyy-MM-dd"), codes);
long clickFlow = clickNum==null?0L:clickNum.longValue();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment