diff --git a/ruoyi-system/pom.xml b/ruoyi-system/pom.xml
index a10ba16..d2a2482 100644
--- a/ruoyi-system/pom.xml
+++ b/ruoyi-system/pom.xml
@@ -47,6 +47,7 @@
             <scope>provided</scope>
         </dependency>
 
+
     </dependencies>
 
 </project>
\ No newline at end of file
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysUserInvite.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysUserInvite.java
deleted file mode 100644
index 3432587..0000000
--- a/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysUserInvite.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package com.ruoyi.system.domain;
-
-import com.ruoyi.common.core.domain.BaseEntity;
-import lombok.Data;
-
-@Data
-public class SysUserInvite extends BaseEntity {
-    private static final long serialVersionUID = 1L;
-
-    private Long codeId;
-
-    private String code;
-
-    private Long userId;
-}
\ No newline at end of file
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserInviteMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserInviteMapper.java
deleted file mode 100644
index b0239ca..0000000
--- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserInviteMapper.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package com.ruoyi.system.mapper;
-
-import com.ruoyi.system.domain.SysUserInvite;
-
-public interface SysUserInviteMapper {
-    SysUserInvite selectInviteByUserId(Long userId);
-    SysUserInvite selectInviteByCode(String code);
-}
\ No newline at end of file
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserInviteService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserInviteService.java
deleted file mode 100644
index d5b04f4..0000000
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserInviteService.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package com.ruoyi.system.service;
-
-import com.ruoyi.system.domain.SysUserInvite;
-
-public interface ISysUserInviteService {
-    SysUserInvite getInviteCode(Long userId);
-    SysUserInvite getUserByInviteCode(String code);
-}
\ No newline at end of file
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserInviteServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserInviteServiceImpl.java
deleted file mode 100644
index e499a5a..0000000
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserInviteServiceImpl.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package com.ruoyi.system.service.impl;
-
-import com.ruoyi.system.domain.SysUserInvite;
-import com.ruoyi.system.mapper.SysUserInviteMapper;
-import com.ruoyi.system.service.ISysUserInviteService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-@Service
-public class SysUserInviteServiceImpl implements ISysUserInviteService {
-    @Autowired
-    private SysUserInviteMapper inviteMapper;
-
-    @Override
-    public SysUserInvite getInviteCode(Long userId) {
-        return inviteMapper.selectInviteByUserId(userId);
-    }
-
-    @Override
-    public SysUserInvite getUserByInviteCode(String code) {
-        return inviteMapper.selectInviteByCode(code);
-    }
-}
\ No newline at end of file
diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserInviteMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserInviteMapper.xml
deleted file mode 100644
index 82da470..0000000
--- a/ruoyi-system/src/main/resources/mapper/system/SysUserInviteMapper.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.ruoyi.system.mapper.SysUserInviteMapper">
-    <resultMap id="SysUserInviteMap" type="com.ruoyi.system.domain.SysUserInvite">
-        <id property="codeId" column="code_id"/>
-        <result property="code" column="code"/>
-        <result property="userId" column="user_id"/>
-    </resultMap>
-
-    <select id="selectInviteByUserId" resultMap="SysUserInviteMap">
-        select code_id, code, user_id
-        from invite_codes
-        where user_id = #{userId}
-    </select>
-
-    <select id="selectInviteByCode" resultMap="SysUserInviteMap">
-        select code_id, code, user_id
-        from invite_codes
-        where code = #{code}
-    </select>
-</mapper>
\ No newline at end of file
