diff --git a/src/main/java/cheat/CheatInterfnterface.java b/src/main/java/cheat/CheatInterfnterface.java
index e7e4942..81aeb2c 100644
--- a/src/main/java/cheat/CheatInterfnterface.java
+++ b/src/main/java/cheat/CheatInterfnterface.java
@@ -1,6 +1,9 @@
 package cheat;
 import org.apache.commons.lang3.tuple.Pair;
 import entity.Appeal;
+import entity.User;
+import java.io.File;
+
 public interface CheatInterfnterface{
     public Pair<String,String>[] GetFakeSeed();//返回做假种的列表，<seedid,userid>
     public void DetectFakeSeed();//检测所有种子是否为假种，并将检测结果写入数据表
@@ -15,4 +18,12 @@
     public Appeal[] GetAppealList();//获取所有申诉列表
     public boolean HandleAppeal(String appealid, Integer status);//处理申诉
     // status = 0表示未处理， = 1表示通过， = 2表示拒绝
+
+    public User[] GetCheatUsers();//获取作弊用户列表，返回User对象数组
+    public User[] GetSuspiciousUsers();//获取可疑用户列表，返回User对象数组
+    public int UnbanUser(String userid);//解封用户，返回0表示成功，1表示用户不存在，2表示用户未被封禁
+    public int BanUser(String userid);//封禁用户，返回0表示成功，1表示用户不存在，2表示用户已被封禁
+
+    public int SubmitAppeal(String userid, String content, File file); // 添加新的申诉，返回0表示成功，1表示用户不存在，2表示内容不合法
+
 }
