Commit d5c08a01 by huluobin

update

parent eec6714e
...@@ -20,6 +20,7 @@ import java.text.ParseException; ...@@ -20,6 +20,7 @@ import java.text.ParseException;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.concurrent.ExecutionException;
/** /**
* 预约service * 预约service
...@@ -34,7 +35,7 @@ public interface ScheduleManageService extends IService<ScheduleManage> { ...@@ -34,7 +35,7 @@ public interface ScheduleManageService extends IService<ScheduleManage> {
* @return list * @return list
* @throws ParseException exception * @throws ParseException exception
*/ */
List<IdleTimeDTO> queryIdleTime(IdleTimeProgramQuery param) throws ParseException; List<IdleTimeDTO> queryIdleTime(IdleTimeProgramQuery param) throws ParseException, ExecutionException, InterruptedException;
/** /**
* 闲时入口查询预约时间 * 闲时入口查询预约时间
......
...@@ -63,6 +63,9 @@ import java.text.SimpleDateFormat; ...@@ -63,6 +63,9 @@ import java.text.SimpleDateFormat;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.ZoneOffset; import java.time.ZoneOffset;
import java.util.*; import java.util.*;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ForkJoinPool;
import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.AtomicLong;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -228,7 +231,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -228,7 +231,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
@Override @Override
public List<IdleTimeDTO> queryIdleTime(IdleTimeProgramQuery qry) throws ParseException { public List<IdleTimeDTO> queryIdleTime(IdleTimeProgramQuery qry) throws ParseException, ExecutionException, InterruptedException {
IdleTimeQuery idleTimeQuery = new IdleTimeQuery(); IdleTimeQuery idleTimeQuery = new IdleTimeQuery();
...@@ -297,12 +300,12 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -297,12 +300,12 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
}); });
}); });
// ForkJoinPool myPool = new ForkJoinPool(dateTimeList.size());
List<IdleTimeDTO> idleTimeDTOList = idleTimeQuery.getDateTimeList() List<IdleTimeDTO> idleTimeDTOList = new CopyOnWriteArrayList();
.stream()
//并行处理 myPool.submit(() -> {
.parallel() idleTimeQuery.getDateTimeList()
.map(dateTime -> { .forEach(dateTime -> {
AtomicLong time = new AtomicLong(System.currentTimeMillis()); AtomicLong time = new AtomicLong(System.currentTimeMillis());
...@@ -331,7 +334,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -331,7 +334,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
//构造默认美甲师 //构造默认美甲师
this.recDefault(defaultNodes, treeProgram); this.recDefault(defaultNodes, treeProgram);
log.debug("构造默认美甲师Time:{}", System.currentTimeMillis() - time.get());
time.set(System.currentTimeMillis()); time.set(System.currentTimeMillis());
IdleTimeDTO idleTimeDTO = new IdleTimeDTO(); IdleTimeDTO idleTimeDTO = new IdleTimeDTO();
...@@ -340,12 +342,13 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -340,12 +342,13 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
idleTimeDTO.setStatus(!treeProgram.childNull()); idleTimeDTO.setStatus(!treeProgram.childNull());
idleTimeDTO.setTreeProgram(treeProgram); idleTimeDTO.setTreeProgram(treeProgram);
idleTimeDTO.setDefaultNodeList(defaultNodes); idleTimeDTO.setDefaultNodeList(defaultNodes);
return idleTimeDTO; idleTimeDTOList.add(idleTimeDTO);
});
});
})
.collect(Collectors.toList());
return idleTimeDTOList; return idleTimeDTOList.stream().sorted(Comparator.comparing(IdleTimeDTO::getTime)).collect(Collectors.toList());
} }
private void recDefault(List<TreeProgram> list, private void recDefault(List<TreeProgram> list,
...@@ -408,7 +411,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -408,7 +411,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
List<Integer> technicianIds = treeProgramList.stream().map(StoreTechnicianPeriod::getTechnicianId).collect(Collectors.toList()); List<Integer> technicianIds = treeProgramList.stream().map(StoreTechnicianPeriod::getTechnicianId).collect(Collectors.toList());
Integer technicianId = storeTechnician.getTechnicianId(); Integer technicianId = storeTechnician.getTechnicianId();
log.debug("technicianIds:{},technicianId:{}", technicianIds, technicianId);
boolean b = technicianIds.contains(technicianId); boolean b = technicianIds.contains(technicianId);
//如果已经设置该美甲师的节点不为空 需要把当前节点的服务时间加上 //如果已经设置该美甲师的节点不为空 需要把当前节点的服务时间加上
...@@ -451,7 +453,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -451,7 +453,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
}); });
parent.setChildList(childList); parent.setChildList(childList);
log.info("构造子树时间:{} ,父亲节点:{}", System.currentTimeMillis() - time, parent.getStoreTechnicianDTO());
return parent; return parent;
} }
......
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