Help to implement my 1st planner
by André Rezende Fróes de Moraes
Hello everyone, i'm trying to implement drools planner for my paper and it
is proving very hard taking in consideration that i never user it before.
I was able to reproduce the examples, even though i got very confused, but
i undestood some things, but i'm really lost of how to implement my own
project/rule.
My paper is about service, I don't really know how to define it, but i'll
try to explain.
A given company receive several requests of maintence, repair, etc, all the
time, and it have a number of people to solve that, these technicians. It's
something like the nurse roaster but waaaay to simpler.
An issue can pop at any minute, it have a starting time and an estimated
time to be acomplished.
The technician have work for a fixed amount of time, but he have the start
time and the end time of work, that I want to use to assign the issue.
I've created the class Technician
Technician
----------------------------
import java.util.Date;
import com.thoughtworks.xstream.annotations.XStreamAlias;
@XStreamAlias("Technician")
public class Technician extends AbstractPersistable {
private int engId;
private int workTime;
private Date startWorkTime;
private Date endWorkTime;
private Technician technician;
public Technician(int engId, int workTime, Date startWorkTime,
Date endWorkTime) {
super();
this.engId = engId;
this.workTime = workTime;
this.startWorkTime = startWorkTime;
this.endWorkTime = endWorkTime;
}
public int getEngId() {
return engId;
}
public void setEngId(int engId) {
this.engId = engId;
}
public Date getStartWorkTime() {
return startWorkTime;
}
public int getWorkTime() {
return workTime;
}
public void setWorkTime(int workTime) {
this.workTime = workTime;
}
public void setStartWorkTime(Date startWorkTime) {
this.startWorkTime = startWorkTime;
}
public Date getEndWorkTime() {
return endWorkTime;
}
public void setEndWorkTime(Date endWorkTime) {
this.endWorkTime = endWorkTime;
}
public Technician getTechnician() {
return technician;
}
public void setTechnician(Technician technician) {
this.technician = technician;
}
}
------------------------------------
Issue class
------------------------------------
import java.util.Date;
import com.thoughtworks.xstream.annotations.XStreamAlias;
@XStreamAlias("CloudComputer")
public class Issue extends AbstractPersistable {
private Date startTime;
private Date estimatedTime;
public Issue(Date startTime, Date estimatedTime) {
super();
this.startTime = startTime;
this.estimatedTime = estimatedTime;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEstimatedTime() {
return estimatedTime;
}
public void setEstimatedTime(Date estimatedTime) {
this.estimatedTime = estimatedTime;
}
}
--------------------------------
and here i got lost. I'm trying to schedule the technician to these issues
based on the estimated time and in the time left of technician.
I accept any kind of help or comment, I need it for next monday, i'll be
tunned everytime on this trying to make it happen.
Thanks for your time
Aijin Nakanishi