HelloService.cs 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. using Infrastructure;
  2. using Infrastructure.Attribute;
  3. using Infrastructure.Model;
  4. using Microsoft.AspNetCore.Authorization;
  5. using Microsoft.AspNetCore.Mvc;
  6. using SqlSugar.IOC;
  7. using ZR.Admin.WebApi.Filters;
  8. using ZR.Model.Content;
  9. using ZR.Model.System;
  10. using ZR.Model.System.Dto;
  11. using ZR.Repository;
  12. using ZR.Service.IService;
  13. using ZR.ServiceCore.Services;
  14. namespace ZR.Service
  15. {
  16. /// <summary>
  17. /// 动态api示例,继承IDynamicApi,使用看swagger生成的地址
  18. /// </summary>
  19. [AppService(ServiceType = typeof(IHelloService), ServiceLifetime = LifeTime.Transient)]
  20. public class HelloService : BaseService<ArticleCategory>, IHelloService, IDynamicApi
  21. {
  22. /// <summary>
  23. /// 引用User服务
  24. /// </summary>
  25. private readonly ISysUserService userService;
  26. /// <summary>
  27. ///
  28. /// </summary>
  29. /// <param name="userService"></param>
  30. public HelloService(ISysUserService userService)
  31. {
  32. this.userService = userService;
  33. }
  34. /// <summary>
  35. /// 数据库使用案例
  36. /// </summary>
  37. /// <param name="name"></param>
  38. /// <returns></returns>
  39. public string SayHello(string name)
  40. {
  41. //构造函数式使用
  42. var user = JsonConvert.SerializeObject(userService.GetFirst(f => f.UserId == 1));
  43. Console.WriteLine(user);
  44. var postService = App.GetRequiredService<ISysPostService>();
  45. Console.WriteLine(JsonConvert.SerializeObject(postService.GetId(1)));
  46. BaseRepository<SysDept> deptRepo = new();
  47. Console.WriteLine(JsonConvert.SerializeObject(deptRepo.GetId(1)));
  48. var result = DbScoped.SugarScope.Queryable<SysDictType>().Where(f => f.DictId == 1).First();
  49. Console.WriteLine(JsonConvert.SerializeObject(result));
  50. //切换库
  51. //DbScoped.SugarScope.GetConnectionScope(2);
  52. GetFirst(x => x.CategoryId == 1);
  53. Context.Queryable<SysUser>().First(f => f.UserId == 1);
  54. return "Hello:" + name;
  55. }
  56. /// <summary>
  57. /// 返回json内容
  58. /// </summary>
  59. /// <param name="userDto"></param>
  60. /// <returns></returns>
  61. [Verify]
  62. public ApiResult SayHello2([FromBody]SysUserDto userDto)
  63. {
  64. var user = userService.GetFirst(f => f.UserId == 2);
  65. return new ApiResult(100, "success", user);
  66. }
  67. public ApiResult SayHello3()
  68. {
  69. throw new CustomException("自定义异常");
  70. }
  71. /// <summary>
  72. /// 返回json内容
  73. /// </summary>
  74. /// <param name="userDto"></param>
  75. /// <returns></returns>
  76. [AllowAnonymous]
  77. public ApiResult SayHelloJson([FromBody] SysUserDto userDto)
  78. {
  79. return new ApiResult(100, "success", userDto);
  80. }
  81. }
  82. }