package com.chinaztt.mes.aps.core.domain;
|
|
import com.chinaztt.mes.aps.core.solver.TaskDifficultyComparator;
|
import com.fasterxml.jackson.annotation.JsonIgnore;
|
import org.optaplanner.core.api.domain.entity.PlanningEntity;
|
import org.optaplanner.core.api.domain.variable.InverseRelationShadowVariable;
|
|
import java.time.LocalDateTime;
|
|
|
/**
|
* @Author: zhangxy
|
* @Date: 2020-10-19 19:58
|
*/
|
@PlanningEntity(difficultyComparatorClass = TaskDifficultyComparator.class)
|
public abstract class AbstractTaskOrResource {
|
|
@JsonIgnore
|
private Task nextTask;
|
|
@InverseRelationShadowVariable(sourceVariableName = "previousTaskOrResource")
|
public Task getNextTask() {
|
return nextTask;
|
}
|
|
public void setNextTask(Task nextTask) {
|
this.nextTask = nextTask;
|
}
|
|
/**
|
* 计划开始时间
|
* @return
|
*/
|
public abstract LocalDateTime getPlanEndTime();
|
}
|