diff --git a/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Application.Contracts/Dtos/Recharge/RechargeGetListOutput.cs b/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Application.Contracts/Dtos/Recharge/RechargeGetListOutput.cs
new file mode 100644
index 00000000..18192a2a
--- /dev/null
+++ b/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Application.Contracts/Dtos/Recharge/RechargeGetListOutput.cs
@@ -0,0 +1,45 @@
+namespace Yi.Framework.AiHub.Application.Contracts.Dtos.Recharge;
+
+public class RechargeGetListOutput
+{
+
+ ///
+ /// 充值金额
+ ///
+ public decimal RechargeAmount { get; set; }
+
+ ///
+ /// ID
+ ///
+ public Guid Id { get; set; }
+
+ ///
+ /// 用户
+ ///
+ public Guid UserId { get; set; }
+
+ ///
+ /// 备注
+ ///
+ public string? Remark { get; set; }
+
+ ///
+ /// 充值内容
+ ///
+ public string Content { get; set; }
+
+ ///
+ /// 到期时间
+ ///
+ public DateTime? ExpireDateTime { get; set; }
+
+ ///
+ /// 联系方式
+ ///
+ public string? ContactInfo { get; set; }
+
+ ///
+ /// 创建时间
+ ///
+ public DateTime CreationTime { get; set; }
+}
\ No newline at end of file
diff --git a/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Application/Services/RechargeService.cs b/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Application/Services/RechargeService.cs
new file mode 100644
index 00000000..651cd552
--- /dev/null
+++ b/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Application/Services/RechargeService.cs
@@ -0,0 +1,41 @@
+using Mapster;
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.Extensions.DependencyInjection;
+using Volo.Abp.Application.Services;
+using Yi.Framework.AiHub.Application.Contracts.Dtos.Recharge;
+using Yi.Framework.AiHub.Domain.Entities;
+using Yi.Framework.Rbac.Application.Contracts.IServices;
+using Yi.Framework.Rbac.Domain.Shared.Dtos;
+using Yi.Framework.SqlSugarCore.Abstractions;
+
+namespace Yi.Framework.AiHub.Application.Services;
+
+///
+/// ai 充值表
+///
+public class RechargeService : ApplicationService
+{
+ private readonly ISqlSugarRepository _repository;
+
+ public RechargeService(ISqlSugarRepository repository)
+ {
+ _repository = repository;
+ }
+
+ ///
+ /// 查询已登录的账户充值记录
+ ///
+ ///
+ [Route("account")]
+ [Authorize]
+ public async Task> GetListByAccountAsync()
+ {
+ var userId = CurrentUser.Id;
+ var entities = await _repository._DbQueryable.Where(x => x.UserId == userId)
+ .OrderByDescending(x => x.CreationTime)
+ .ToListAsync();
+ var output = entities.Adapt>();
+ return output;
+ }
+}
\ No newline at end of file
diff --git a/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Domain/Entities/AiRechargeAggregateRoot.cs b/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Domain/Entities/AiRechargeAggregateRoot.cs
new file mode 100644
index 00000000..0a586d39
--- /dev/null
+++ b/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Domain/Entities/AiRechargeAggregateRoot.cs
@@ -0,0 +1,41 @@
+using SqlSugar;
+using Volo.Abp.Domain.Entities.Auditing;
+
+namespace Yi.Framework.AiHub.Domain.Entities;
+
+///
+/// 充值表
+///
+[SugarTable("Ai_Recharge")]
+public class AiRechargeAggregateRoot : FullAuditedAggregateRoot
+{
+ ///
+ /// 充值金额
+ ///
+ public decimal RechargeAmount { get; set; }
+
+ ///
+ /// 用户
+ ///
+ public Guid UserId { get; set; }
+
+ ///
+ /// 备注
+ ///
+ public string? Remark { get; set; }
+
+ ///
+ /// 充值内容
+ ///
+ public string Content { get; set; }
+
+ ///
+ /// 到期时间
+ ///
+ public DateTime? ExpireDateTime { get; set; }
+
+ ///
+ /// 联系方式
+ ///
+ public string? ContactInfo { get; set; }
+}
\ No newline at end of file
diff --git a/Yi.RuoYi.Vue3/publish.bat b/Yi.RuoYi.Vue3/publish.bat
new file mode 100644
index 00000000..88107f45
--- /dev/null
+++ b/Yi.RuoYi.Vue3/publish.bat
@@ -0,0 +1,24 @@
+@echo on
+
+set SERVER_USER=root
+set SERVER_IP=data.ccnetcore.com
+set FILE_PATH=publish_ruoyi_02.zip
+set REMOTE_PATH=/home/yi/build/publish_ruoyi_02.zip
+set REMOTE_COMMAND="cd /home/yi/rbac&&pwd&&unzip -o /home/yi/build/publish_ruoyi_02.zip -d ./"
+set sevenzip_Path="D:\Program Files\7-Zip\7z.exe"
+
+echo start
+echo 1-build-start
+:: npm run build
+echo 1-build-end
+echo 2-zip-start
+
+%sevenzip_Path% a ./publish_ruoyi_02.zip ./dist/*
+:: tar -cvf publish_bbs_02.zip -C "dist" "*"
+echo 2-zip-end
+echo 3-publish-start
+scp %FILE_PATH% %SERVER_USER%@%SERVER_IP%:%REMOTE_PATH%
+ssh %SERVER_USER%@%SERVER_IP% %REMOTE_COMMAND%
+echo 3-publish-end
+echo end
+pause
diff --git a/Yi.RuoYi.Vue3/publish_demo.bat b/Yi.RuoYi.Vue3/publish_demo.bat
index bd30e6a5..d68a3a84 100644
--- a/Yi.RuoYi.Vue3/publish_demo.bat
+++ b/Yi.RuoYi.Vue3/publish_demo.bat
@@ -2,9 +2,9 @@
set SERVER_USER=root
set SERVER_IP=data.ccnetcore.com
-set FILE_PATH=publish_ruoyi_02.zip
-set REMOTE_PATH=/home/yi/build/publish_ruoyi_02.zip
-set REMOTE_COMMAND="cd /home/yi/demo-rbac&&pwd&&unzip -o /home/yi/build/publish_ruoyi_02.zip -d ./"
+set FILE_PATH=publish_ruoyi_demo_02.zip
+set REMOTE_PATH=/home/yi/build/publish_ruoyi_demo_02.zip
+set REMOTE_COMMAND="cd /home/yi/demo-rbac&&pwd&&unzip -o /home/yi/build/publish_ruoyi_demo_02.zip -d ./"
set sevenzip_Path="D:\Program Files\7-Zip\7z.exe"
echo start
@@ -13,7 +13,7 @@ echo 1-build-start
echo 1-build-end
echo 2-zip-start
-%sevenzip_Path% a ./publish_ruoyi_02.zip ./dist/*
+%sevenzip_Path% a ./publish_ruoyi_demo_02.zip ./dist/*
:: tar -cvf publish_bbs_02.zip -C "dist" "*"
echo 2-zip-end
echo 3-publish-start