From 0d5dc0303061439c0b733f901262731fd0b9c9fe Mon Sep 17 00:00:00 2001 From: lihanbo Date: Wed, 16 Oct 2024 11:27:14 +0800 Subject: [PATCH] Use IModule register modules --- LFlow.Home/Controllers/HomeControl.cs | 2 +- LFlow.Home/HomeModule.cs | 30 +++++++++++++++++ LFlow.Home/Models/DtoModel/HomeDto.cs | 19 +++++++++-- LFlow.Home/Repositorys/HomeRepo.cs | 43 +++++++++--------------- LFlow.Home/Services/HomeService.cs | 18 +++++----- LFlow.User/Repositorys/UserRepo.cs | 48 +++++++++------------------ 6 files changed, 90 insertions(+), 70 deletions(-) create mode 100644 LFlow.Home/HomeModule.cs diff --git a/LFlow.Home/Controllers/HomeControl.cs b/LFlow.Home/Controllers/HomeControl.cs index b9dc707..08d5d84 100644 --- a/LFlow.Home/Controllers/HomeControl.cs +++ b/LFlow.Home/Controllers/HomeControl.cs @@ -6,7 +6,7 @@ using Serilog; using Serilog.Core; namespace LFlow.Home.Controllers; -public class HomeController(IHomeService service, ILogger logger) : BaseController +public class HomeController(IHomeService service, ILogger logger) { [HttpGet] public string Home(string id) diff --git a/LFlow.Home/HomeModule.cs b/LFlow.Home/HomeModule.cs new file mode 100644 index 0000000..a58a41b --- /dev/null +++ b/LFlow.Home/HomeModule.cs @@ -0,0 +1,30 @@ +using System; +using System.Reflection; +using LFlow.Base.BusinessInterface; +using LFlow.Base.Interfaces; +using LFlow.Base.Utils; +using LFlow.Home.Models.DataModels; +using LFlow.Home.Models.DtoModel; +using LFlow.Home.Services; +using Microsoft.Extensions.DependencyInjection; + +namespace LFlow.Home; + +public class HomeModule : IModule +{ + public void ConfigureModule(IServiceCollection services) + { + // 将HomeModel注册到CodeFirst,将会在程序启动后自动创建表 + CodeFirst.AddType(typeof(HomeModel)); + + var assembly = Assembly.GetAssembly(typeof(HomeService))!; + var types = assembly.GetTypes().ToList(); + RegisterModule.RegisterAllService(types, services); + RegisterModule.RegisterAllRepo(types, services); + RegisterModule.RegisterAllModule(types, services); + services.AddControllers().AddApplicationPart(assembly); + Console.WriteLine("HomeModule ConfigureModule"); + + } + +} diff --git a/LFlow.Home/Models/DtoModel/HomeDto.cs b/LFlow.Home/Models/DtoModel/HomeDto.cs index d694add..44ecde5 100644 --- a/LFlow.Home/Models/DtoModel/HomeDto.cs +++ b/LFlow.Home/Models/DtoModel/HomeDto.cs @@ -5,11 +5,26 @@ namespace LFlow.Home.Models.DtoModel; public class HomeDto : IModel { - public string? Id { get; set; } + public string? Id + { + get; set; + } + public string? ModuleName + { + get; set; + } + public string? ModuleUrl + { + get; set; + } + public string? ModuleVer + { + get; set; + } public override string ToString() { - return $"HomeDto {Id}"; + return $"HomeDto {Id} _ {ModuleName} _ {ModuleUrl} _ {ModuleVer}"; } } diff --git a/LFlow.Home/Repositorys/HomeRepo.cs b/LFlow.Home/Repositorys/HomeRepo.cs index 28fd38c..4a1a30c 100644 --- a/LFlow.Home/Repositorys/HomeRepo.cs +++ b/LFlow.Home/Repositorys/HomeRepo.cs @@ -1,4 +1,5 @@ using System; +using LFlow.Base.Default; using LFlow.Base.Interfaces; // using LFlow.Interfaces; @@ -7,33 +8,21 @@ using SqlSugar; namespace LFlow.Home.Repositorys; -public class HomeRepo(ISqlSugarClient db) : IRepo +public class HomeRepo(ISqlSugarClient db) : DefaultCurdRepo(db) { - public HomeModel Delete(string id) - { - throw new NotImplementedException(); - } - public HomeModel Get(string id) - { - return new HomeModel - { - Id = id - }; - } - - public HomeModel SaveOrUpdate(HomeModel entity, bool isUpdate) - { - throw new NotImplementedException(); - } - - public List Search(HomeModel whereObj) - { - throw new NotImplementedException(); - } - - public List WhereSearchId(HomeModel whereObj) - { - throw new NotImplementedException(); - } + /// + /// 查询 + /// + /// + /// + /// + public override List Search(HomeModel whereObj) => throw new NotImplementedException(); + /// + /// 根据条件查询ID + /// + /// + /// + /// + public override List WhereSearchId(HomeModel whereObj) => throw new NotImplementedException(); } diff --git a/LFlow.Home/Services/HomeService.cs b/LFlow.Home/Services/HomeService.cs index 4189729..756b78a 100644 --- a/LFlow.Home/Services/HomeService.cs +++ b/LFlow.Home/Services/HomeService.cs @@ -7,31 +7,33 @@ using LFlow.Home.Models.DataModels; using LFlow.Home.Models.DtoModel; using LFlow.Base.BusinessInterface; using Serilog; +using Microsoft.AspNetCore.Mvc; namespace LFlow.Home.Services; -public class HomeService(IRepo repo, ILogger logger) : IHomeService +public class HomeService(IRepo repo, ILogger logger) : BaseController, IHomeService { - public HomeDto DeleteById(string id) + [HttpGet] + public HomeDto? DeleteById(string id) { var result = repo.Delete(id); return Mapper.Map(result); } - - public HomeDto GetById(string id) + [HttpGet] + public HomeDto? GetById(string id) { logger.Information($"GetById id -> {id}"); var result = repo.Get(id); return Mapper.Map(result); } - - public HomeDto Save(HomeDto entity) + [HttpPost] + public HomeDto? Save(HomeDto entity) { var result = repo.SaveOrUpdate(Mapper.Map(entity), false); return Mapper.Map(result); } - - public List Search(HomeDto whereObj) + [HttpGet] + public List? Search(HomeDto whereObj) { throw new NotImplementedException(); } diff --git a/LFlow.User/Repositorys/UserRepo.cs b/LFlow.User/Repositorys/UserRepo.cs index 86f9c17..500732c 100644 --- a/LFlow.User/Repositorys/UserRepo.cs +++ b/LFlow.User/Repositorys/UserRepo.cs @@ -1,41 +1,25 @@ using System; +using LFlow.Base.Default; using LFlow.Base.Interfaces; using LFlow.User.Model.DataModel; using SqlSugar; namespace LFlow.User.Repositorys; -public class UserRepo(ISqlSugarClient db) : IRepo +public class UserRepo(ISqlSugarClient db) : DefaultCurdRepo(db) { - public UserModel Delete(string id) - { - throw new NotImplementedException(); - } - - public UserModel Get(string id) - { - return new UserModel - { - UserID = id, - UserName = "Test User", - UserNickName = "Tester", - EmailAddress = "Test@Ling.chat", - - }; - } - - public UserModel SaveOrUpdate(UserModel entity, bool isUpdate) - { - throw new NotImplementedException(); - } - - public List Search(UserModel whereObj) - { - throw new NotImplementedException(); - } - - public List WhereSearchId(UserModel whereObj) - { - throw new NotImplementedException(); - } + /// + /// 查询 + /// + /// + /// + /// + public override List Search(UserModel whereObj) => throw new NotImplementedException(); + /// + /// 根据条件查询ID + /// + /// + /// + /// + public override List WhereSearchId(UserModel whereObj) => throw new NotImplementedException(); }