提成转移算法优化
This commit is contained in:
parent
6d77e6e07c
commit
ba10d518de
@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray;
|
||||
import com.stdiet.common.core.domain.AjaxResult;
|
||||
import com.stdiet.common.utils.DateUtils;
|
||||
import com.stdiet.common.utils.StringUtils;
|
||||
import com.stdiet.common.utils.bean.ObjectUtils;
|
||||
import com.stdiet.custom.domain.*;
|
||||
import com.stdiet.custom.dto.request.SysOrderCommision;
|
||||
import com.stdiet.custom.dto.response.EveryMonthTotalAmount;
|
||||
@ -58,9 +59,6 @@ public class SysCommissionDayServiceImpl implements ISysCommissionDayService {
|
||||
sysCommissionDayDetail.setNickName(commision.getUserName());
|
||||
sysCommissionDayDetail.setPostId(commision.getPostId());
|
||||
sysCommissionDayDetail.setPostName(commision.getPostName());
|
||||
if(orderDetailMap.get(sysCommissionDayDetail.getUserId()) != null && orderDetailMap.get(sysCommissionDayDetail.getUserId()).size() > 0){
|
||||
System.out.println(sysCommissionDayDetail.getUserId());
|
||||
}
|
||||
dealServerOrderCommissionDetail(sysCommision, orderDetailMap.get(sysCommissionDayDetail.getUserId()), sysCommissionDayDetail);
|
||||
result.add(sysCommissionDayDetail);
|
||||
//统计所以用户总提成、已发放提成、未发放提成
|
||||
@ -474,9 +472,9 @@ public class SysCommissionDayServiceImpl implements ISysCommissionDayService {
|
||||
sysOrder.setGiveServeDay(0);
|
||||
sysOrderCommisionDayDetailList.add(statisticsOrderMessage(sysOrder, sysCommision.getServerScopeStartTime(), sysCommision.getServerScopeEndTime()));
|
||||
}
|
||||
int index = 0;
|
||||
for (SysOrderNutritionistReplaceRecord record : nutritAfterSaleRecord) {
|
||||
index++;
|
||||
for (int index = 0; index < nutritAfterSaleRecord.size(); index++) {
|
||||
SysOrderNutritionistReplaceRecord record = nutritAfterSaleRecord.get(index);
|
||||
|
||||
LocalDate recordStartTime = DateUtils.dateToLocalDate(record.getStartTime());
|
||||
if(ChronoUnit.DAYS.between(recordStartTime, serverStartDate) > 0){
|
||||
recordStartTime = serverStartDate;
|
||||
@ -486,7 +484,7 @@ public class SysCommissionDayServiceImpl implements ISysCommissionDayService {
|
||||
continue;
|
||||
}
|
||||
//获取下一个记录的开始时间,如果不存在则直接取服务结束时间
|
||||
LocalDate nextRecordStartTime = replaceRecordList.size() > index ? DateUtils.dateToLocalDate(replaceRecordList.get(index).getStartTime()) : null;
|
||||
LocalDate nextRecordStartTime = nutritAfterSaleRecord.size() > index+1 ? DateUtils.dateToLocalDate(nutritAfterSaleRecord.get(index+1).getStartTime()) : null;
|
||||
if(nextRecordStartTime == null || ChronoUnit.DAYS.between(recordStartTime, serverEndDate) < 0){
|
||||
nextRecordStartTime = serverEndDate;
|
||||
}
|
||||
@ -505,7 +503,14 @@ public class SysCommissionDayServiceImpl implements ISysCommissionDayService {
|
||||
//判断是否已存在相同时间范围的记录
|
||||
String key = DateUtils.dateTime(sysOrder.getCommissStartTime()) + DateUtils.dateTime(sysOrder.getServerEndTime());
|
||||
if(existMap.containsKey(key)){
|
||||
sysOrderCommisionDayDetailList.add(existMap.get(key));
|
||||
try{
|
||||
SysOrderCommisionDayDetail newSysOrderCommisionDayDetail = ObjectUtils.getObjectByObject(existMap.get(key), SysOrderCommisionDayDetail.class);
|
||||
newSysOrderCommisionDayDetail.setNutritionistId(i == 0 ? record.getNutritionistId() : null);
|
||||
newSysOrderCommisionDayDetail.setAfterSaleId(i == 1 ? record.getAfterSaleId() : null);
|
||||
sysOrderCommisionDayDetailList.add(newSysOrderCommisionDayDetail);
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
}else{
|
||||
existMap.put(key, statisticsOrderMessage(sysOrder, sysCommision.getServerScopeStartTime(), sysCommision.getServerScopeEndTime()));
|
||||
sysOrderCommisionDayDetailList.add(existMap.get(key));
|
||||
|
Loading…
x
Reference in New Issue
Block a user