浏览代码

新模型探索

fangpy 4 月之前
父节点
当前提交
e2042aa3e5

+ 3 - 2
rw-aps-server/src/main/java/com/rongwei/rwapsserver/aps/score/ApsConstraintListProvider.java

@@ -1654,7 +1654,7 @@ public class ApsConstraintListProvider implements ConstraintProvider {
                     return bol;
                     return bol;
                 })
                 })
                 .penalize(HardMediumSoftScore.ONE_MEDIUM,(productionProcesses) ->{
                 .penalize(HardMediumSoftScore.ONE_MEDIUM,(productionProcesses) ->{
-                    Date deliveryMinDate = null;
+                    /*Date deliveryMinDate = null;
                     for (ProduceOrder produceOrder : productionProcesses.getProduceOrder()) {
                     for (ProduceOrder produceOrder : productionProcesses.getProduceOrder()) {
                         if(deliveryMinDate == null){
                         if(deliveryMinDate == null){
                             deliveryMinDate = produceOrder.getDeliveryDate();
                             deliveryMinDate = produceOrder.getDeliveryDate();
@@ -1668,7 +1668,8 @@ public class ApsConstraintListProvider implements ConstraintProvider {
                     if(i<0){
                     if(i<0){
                         int aa = 0;
                         int aa = 0;
                     }
                     }
-                    return i;
+                    return i;*/
+                    return 100;
                 })
                 })
                 .asConstraint("deliveryDate");
                 .asConstraint("deliveryDate");
     }
     }

+ 4 - 0
rw-aps-server/src/main/java/com/rongwei/rwapsserver/aps/taskassigning/TaskStartTimeListenerTa.java

@@ -61,6 +61,7 @@ public class TaskStartTimeListenerTa implements ListVariableListener<ApsSolution
             return;
             return;
         }
         }
 
 
+        index = 0;
         ProductionProcesses productionProcessesTa = tasks.get(index);
         ProductionProcesses productionProcessesTa = tasks.get(index);
         LocalDateTime previousEndTime = index == 0 ? productionProcessesTa.getApsOverallConfig().getStartTime() : tasks.get(index - 1).getEndTime();
         LocalDateTime previousEndTime = index == 0 ? productionProcessesTa.getApsOverallConfig().getStartTime() : tasks.get(index - 1).getEndTime();
 
 
@@ -94,6 +95,9 @@ public class TaskStartTimeListenerTa implements ListVariableListener<ApsSolution
         LocalDateTime previousLastEndTime = null;
         LocalDateTime previousLastEndTime = null;
         if(t.getPreviousProcesses() != null && t.getPreviousProcesses().size()>0){
         if(t.getPreviousProcesses() != null && t.getPreviousProcesses().size()>0){
             for (ProductionProcesses previousProcess : t.getPreviousProcesses()) {
             for (ProductionProcesses previousProcess : t.getPreviousProcesses()) {
+                if(previousProcess.getEquipment() != null && previousProcess.getEquipment().getId().equals(equipmentTa.getId())){
+                    continue;
+                }
                 int lzTimes = 0;
                 int lzTimes = 0;
                 if(previousProcess.getEquipment().getWorkshopid() != null && previousProcess.getEquipment().getWorkshopid().equals(equipmentTa.getWorkshopid())){
                 if(previousProcess.getEquipment().getWorkshopid() != null && previousProcess.getEquipment().getWorkshopid().equals(equipmentTa.getWorkshopid())){
                     lzTimes = t.getApsOverallConfig().getRoamTime().get("WORKSHOP_IN");
                     lzTimes = t.getApsOverallConfig().getRoamTime().get("WORKSHOP_IN");