ICe 3 сар өмнө
parent
commit
abb00c40b8

+ 6 - 4
Readme.md

@@ -1,7 +1,9 @@
-APP窗口大小 
-940*530
-939*529
-//800*450
+## APP窗口大小 
+- 940*530
+- 939*529
+
+## TODOlist
+-
 
 # 应用程序说明文档
 

BIN
opencv/scene/family/out/check.png


BIN
opencv/scene/family/task/cancle.png


+ 35 - 1
src/main/java/com/sencorsta/rabs/obj/ai/scene/emblem/SceneMain_Emblem.java

@@ -5,6 +5,7 @@ import com.sencorsta.rabs.annotation.SceneAnnotation;
 import com.sencorsta.rabs.obj.ai.AiManage;
 import com.sencorsta.rabs.obj.ai.api.BaseScene;
 import com.sencorsta.rabs.obj.ai.api.Scene;
+import com.sencorsta.rabs.util.ResettableData;
 import org.opencv.core.Point;
 
 import java.awt.AWTException;
@@ -108,7 +109,31 @@ public class SceneMain_Emblem extends BaseScene implements Scene {
             count++;
         }
 
-        //TODO ice 领奖
+        //领奖
+        moveToClick(PathCheck, AiManage.getInstance().getCheckPoint(), new Point(0, 360));
+        ThreadUtil.sleep(2000);
+        randomToClick();
+        ThreadUtil.sleep(2000);
+
+        moveToClick(PathCheck, AiManage.getInstance().getCheckPoint(), new Point(0, 295));
+        ThreadUtil.sleep(2000);
+        randomToClick();
+        ThreadUtil.sleep(2000);
+
+        moveToClick(PathCheck, AiManage.getInstance().getCheckPoint(), new Point(0, 228));
+        ThreadUtil.sleep(2000);
+        randomToClick();
+        ThreadUtil.sleep(2000);
+
+        moveToClick(PathCheck, AiManage.getInstance().getCheckPoint(), new Point(0, 162));
+        ThreadUtil.sleep(2000);
+        randomToClick();
+        ThreadUtil.sleep(2000);
+
+        moveToClick(PathCheck, AiManage.getInstance().getCheckPoint(), new Point(0, 90));
+        ThreadUtil.sleep(2000);
+        randomToClick();
+        ThreadUtil.sleep(2000);
     }
 
     @Override
@@ -116,4 +141,13 @@ public class SceneMain_Emblem extends BaseScene implements Scene {
         return getRecord().getData().getCount() > maxTimes;
     }
 
+
+    /**
+     * 重置
+     */
+    @Override
+    public ResettableData.ResetType getType(){
+        return ResettableData.ResetType.WEEKLY1_4;
+    }
+
 }

+ 11 - 0
src/main/java/com/sencorsta/rabs/obj/ai/scene/family/SceneMain_Family_Task.java

@@ -31,10 +31,16 @@ public class SceneMain_Family_Task extends BaseScene implements Scene {
 
     private static String PathRightdoor = System.getProperty("user.dir") + "\\opencv\\scene\\family\\task\\rightDoor.png";
     private static String PathGoLeft = System.getProperty("user.dir") + "\\opencv\\scene\\family\\task\\goLeft.png";
+    private static String PathCancle = System.getProperty("user.dir") + "\\opencv\\scene\\family\\task\\cancle.png";
 
 
     @Override
     public void back() throws AWTException {
+        if (checkHas(PathCancle, AiManage.getInstance().getCheckPoint())) {
+            moveToClick(PathCancle, AiManage.getInstance().getCheckPoint(),new Point(0,270));
+            ThreadUtil.sleep(2000);
+        }
+
         moveToClick(PathBack, AiManage.getInstance().getCheckPoint());
         ThreadUtil.sleep(2000);
     }
@@ -87,6 +93,11 @@ public class SceneMain_Family_Task extends BaseScene implements Scene {
                 moveToClick(PathTask4, AiManage.getInstance().getCheckPoint(),new Point(0,270));
                 ThreadUtil.sleep(2000);
             }
+
+            if (checkHas(PathCancle, AiManage.getInstance().getCheckPoint())) {
+                moveToClick(PathCancle, AiManage.getInstance().getCheckPoint(),new Point(0,270));
+                ThreadUtil.sleep(2000);
+            }
         }
         getRecord().getData().setDone(true);
     }

+ 20 - 0
src/main/java/com/sencorsta/rabs/util/ResettableData.java

@@ -42,6 +42,26 @@ public class ResettableData<T extends Status> {
                 return DateUtil.beginOfWeek(DateUtil.nextWeek()).offset(DateField.HOUR, 5).getTime();
             }
         },
+        /**
+         * 每周重置(周一和周四的5点)
+         */
+        WEEKLY1_4 {
+            @Override
+            long getNextResetTime() {
+                DateTime now = DateUtil.date();
+                DateTime nextMonday5AM = DateUtil.beginOfWeek(now).offset(DateField.HOUR, 5); // 下一个周一的5点
+                DateTime nextThursday5AM = DateUtil.beginOfWeek(now).offset(DateField.DAY_OF_WEEK, 4).offset(DateField.HOUR, 5); // 下一个周四的5点
+
+                if (now.isBefore(nextMonday5AM)) {
+                    return nextMonday5AM.getTime();
+                } else if (now.isBefore(nextThursday5AM)) {
+                    return nextThursday5AM.getTime();
+                } else {
+                    // 如果当前时间已经过了周四的5点,则下一个重置时间为再下一个周一的5点
+                    return nextMonday5AM.offset(DateField.WEEK_OF_YEAR, 1).getTime();
+                }
+            }
+        },
         /**
          * 每2周重置
          */