現有六個小組 組1,組2,組3,。。。。
需求是 一個待分配的專案我點擊辦理 自動分配給第一個小組 再來一個待分配專案 點擊分配 自動分配給第二個小組實作按小組順序自動分配任務 如果出現某個小組請假或者特殊情況 請假小組本輪跳空下一輪再次按照順序分配任務(六個小組分一圈為一輪)
uj5u.com熱心網友回復:
求大神幫幫忙uj5u.com熱心網友回復:
public class Test07 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Group g1 = new Group("1");
Group g2 = new Group("2");
Group g3 = new Group("3");
Group g4 = new Group("4");
Group g5 = new Group("5");
Group g6 = new Group("6");
g1.setNext(g2);
g2.setNext(g3);
g3.setNext(g4);
g4.setNext(g5);
g5.setNext(g6);
g6.setNext(g1);
new Thread(() -> {
try {
Thread.sleep(6000);
} catch (InterruptedException e) {
e.printStackTrace();
}
g5.setOk(false);
}).start();
Group gg = g1;
while((gg = gg.doSomething()) != null);
}
static class Group{
String name;
private boolean isOk = true;
private Group next;
public Group(String name) {
super();
this.name = name;
}
public void setNext(Group next) {
this.next = next;
}
public void setOk(boolean isOk) {
this.isOk = isOk;
}
public boolean isOk() {
return isOk;
}
private void _doSomething() {
try {
Thread.sleep(1000);
System.out.println(this.name);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public Group doSomething() throws NullPointerException{
if(this.isOk())
this._doSomething();
else
return this.next.doSomething();
return this.next;
}
}
}
uj5u.com熱心網友回復:
謝謝
但是我目前的需求是 專案辦理辦理第一個待分配的專案時在前臺點擊辦理 自動將這一個專案按小組順序分配給小組1 辦理人員又要辦理第二個專案時點擊辦理 將專案自動分配給小組2 依次類推
uj5u.com熱心網友回復:
設計一個結構:小組名,小組順序號(比如必須連續從1開始),小組是否請假。第二個:當前小組順序號 。 最好是建立相應的表結構,把小組資訊存到資料庫里面去。分配任務的時候根據當前更新當前順序號+1 就是要分配的小組號。當當前順序號大于最大小組順序號的時候,重置為最小小組順序號。uj5u.com熱心網友回復:
創建一個長度為6的倍數的陣列,定時讀取,下標決定組號轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/29476.html
標籤:Java EE
