From f0a5f2f878e66594d1b1b93901860ba2e358b42c Mon Sep 17 00:00:00 2001 From: zhangbin <460190368@qq.com> Date: Thu, 6 Feb 2025 15:54:01 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=84=E4=BB=B6=E6=95=B0=E6=8D=AE=E7=AE=A1?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ServiceApp/GoView/GoViewProjectApp.cs | 86 ++++++++++++++++++- .../Domain/GoView/GoviewComponent.cs | 35 ++++++++ .../GoView/GoViewController.cs | 44 ++++++++++ 3 files changed, 163 insertions(+), 2 deletions(-) create mode 100644 OpenAuth.Repository/Domain/GoView/GoviewComponent.cs diff --git a/OpenAuth.App/ServiceApp/GoView/GoViewProjectApp.cs b/OpenAuth.App/ServiceApp/GoView/GoViewProjectApp.cs index e299b9e..2723fc2 100644 --- a/OpenAuth.App/ServiceApp/GoView/GoViewProjectApp.cs +++ b/OpenAuth.App/ServiceApp/GoView/GoViewProjectApp.cs @@ -33,7 +33,7 @@ public class GoViewProjectApp : SqlSugarBaseApp var flag = await Repository.AsUpdateable(project).IgnoreNullColumns().ExecuteCommandAsync(); return new Response - { Code = 200, Result = flag > 0, Message = flag > 0 ? "修改成功" : "修改失败" }; + { Code = 200, Result = flag > 0, Message = flag > 0 ? "修改成功" : "修改失败" }; } public async Task> Create(GoviewProject project) @@ -45,7 +45,7 @@ public class GoViewProjectApp : SqlSugarBaseApp project.Id = Guid.NewGuid().ToString(); var flag = await Repository.InsertAsync(project); return new Response - { Code = 200, Result = flag ? project : null, Message = flag ? "创建成功" : "创建失败" }; + { Code = 200, Result = flag ? project : null, Message = flag ? "创建成功" : "创建失败" }; } public async Task> Publish(GoViewProjectRequest req) @@ -132,4 +132,86 @@ public class GoViewProjectApp : SqlSugarBaseApp return new Response { Code = 200, Result = flag, Message = flag ? "数据保存成功" : "数据保存失败" }; } + + #region 组件数据 + /// + /// 获取组件集合 + /// + /// + /// + public async Task>>> GetComponentList(GoViewProjectPage page) + { + RefAsync total = 0; + var list = await Repository.ChangeRepository>().AsQueryable() + .WhereIF(!string.IsNullOrEmpty(page.key),r=>r.ComponentName.Contains(page.key)) + .ToPageListAsync(page.page, page.limit, total); + return new Response>>() + { + Result = new PageInfo> + { + Items = list, + Total = total + } + }; + } + /// + /// 获取组件数据 + /// + /// + /// + public async Task> GetComponentData(string componentId) + { + var data = await Repository.ChangeRepository>().AsQueryable() + .SingleAsync(a => a.Id == componentId); + + return new Response() + { + Result = data + }; + } + /// + /// 保存组件数据 + /// + /// + /// + /// + public async Task> SaveComponentData(GoviewComponent data) + { + // 更新还是保存, + var comData = await Repository + .ChangeRepository>() + .AsQueryable() + .SingleAsync(a => a.Id == data.Id); + bool flag; + if (comData == null) + { + data.Id = Guid.NewGuid().ToString(); + data.CreateUserId = _auth.GetUserId(); + data.CreateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); + flag = await Repository.ChangeRepository>().InsertAsync(data); + } + else + { + data.Id = comData.Id; + flag = await Repository + .ChangeRepository>() + .AsUpdateable(data) + .IgnoreColumns(a => new { a.CreateTime, a.CreateUserId }) + .IgnoreNullColumns() + .ExecuteCommandAsync() > 0; + } + return new Response { Code = 200, Result = flag, Message = flag ? "数据保存成功" : "数据保存失败" }; + } + /// + /// 删除组件 + /// + /// + /// + public async Task> DeleteComponent(string ids) + { + var idArray = ids.Split(","); + var flag = await Repository.ChangeRepository>().DeleteByIdsAsync(idArray); + return new Response { Code = 200, Result = flag, Message = flag ? "删除成功" : "删除失败" }; + } + #endregion } \ No newline at end of file diff --git a/OpenAuth.Repository/Domain/GoView/GoviewComponent.cs b/OpenAuth.Repository/Domain/GoView/GoviewComponent.cs new file mode 100644 index 0000000..942d68a --- /dev/null +++ b/OpenAuth.Repository/Domain/GoView/GoviewComponent.cs @@ -0,0 +1,35 @@ +using SqlSugar; + +namespace OpenAuth.Repository.Domain.GoView; + +/// +/// 组件模型类 +/// +[SugarTable("t_goview_component")] +public class GoviewComponent +{ + [SugarColumn(IsPrimaryKey = true, ColumnName = "id")] + public string Id { get; set; } + + /// + /// 组件名称 + /// + [SugarColumn(ColumnName = "component_name")] + public string ComponentName { get; set; } + + + [SugarColumn(IsNullable = true, ColumnName = "create_time")] + public string CreateTime { get; set; } + + /// + /// 创建人id + /// + [SugarColumn(ColumnName = "create_user_id")] + public string CreateUserId { get; set; } + + /// + /// 组件数据 + /// + [SugarColumn(ColumnName = "component_data")] + public string ComponentData { get; set; } +} \ No newline at end of file diff --git a/OpenAuth.WebApi/Controllers/ServiceControllers/GoView/GoViewController.cs b/OpenAuth.WebApi/Controllers/ServiceControllers/GoView/GoViewController.cs index ab63f9c..518cf64 100644 --- a/OpenAuth.WebApi/Controllers/ServiceControllers/GoView/GoViewController.cs +++ b/OpenAuth.WebApi/Controllers/ServiceControllers/GoView/GoViewController.cs @@ -109,4 +109,48 @@ public class GoViewProjectController : ControllerBase { return await _app.SaveData(data); } + + #region 组件数据 + /// + /// 获取组件集合 + /// + /// + /// + /// + [HttpGet("getcomponentlist")] + public async Task>>> GetComponentList([FromQuery] GoViewProjectPage req) + { + return await _app.GetComponentList(req); + } + /// + /// 获取组件数据 + /// + /// + /// + [HttpGet("getComponentData")] + public async Task> GetComponentData(string componentId) + { + return await _app.GetComponentData(componentId); + } + /// + /// 保存组件数据 + /// + /// + /// + [HttpPost("saveComponentData")] + public async Task> SaveComponentData(GoviewComponent data) + { + return await _app.SaveComponentData(data); + } + /// + /// 删除组件数据 + /// + /// + /// + [HttpPost("deleteComponentData")] + public async Task> DeleteComponent(string ids) + { + return await _app.DeleteComponent(ids); + } + #endregion } \ No newline at end of file