OptionsSetting.cs 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. using System.Collections.Generic;
  2. namespace Infrastructure.Model
  3. {
  4. /// <summary>
  5. /// 获取配置文件POCO实体类
  6. /// </summary>
  7. public class OptionsSetting
  8. {
  9. /// <summary>
  10. /// 是否单点登录
  11. /// </summary>
  12. public bool SingleLogin { get; set; }
  13. /// <summary>
  14. /// 是否演示模式
  15. /// </summary>
  16. public bool DemoMode { get; set; }
  17. /// <summary>
  18. /// 初始化db
  19. /// </summary>
  20. public bool InitDb { get; set; }
  21. public MailOptions MailOptions { get; set; }
  22. public Upload Upload { get; set; }
  23. public ALIYUN_OSS ALIYUN_OSS { get; set; }
  24. public JwtSettings JwtSettings { get; set; }
  25. public CodeGen CodeGen { get; set; }
  26. public List<DbConfigs> DbConfigs { get; set; }
  27. public DbConfigs CodeGenDbConfig { get; set; }
  28. public List<ServiceItem> Services { get; set; }
  29. public List<string> GatewayFilterUrl { get; set; }
  30. public AesItem Aes { get; set; }
  31. }
  32. /// <summary>
  33. /// 发送邮件数据配置
  34. /// </summary>
  35. public class MailOptions
  36. {
  37. public string FromName { get; set; }
  38. public string FromEmail { get; set; }
  39. public string Password { get; set; }
  40. public string Smtp { get; set; }
  41. public int Port { get; set; }
  42. public bool UseSsl { get; set; }
  43. public string Signature { get; set; }
  44. }
  45. /// <summary>
  46. /// 上传
  47. /// </summary>
  48. public class Upload
  49. {
  50. public string UploadUrl { get; set; }
  51. public string LocalSavePath { get; set; }
  52. public int MaxSize { get; set; }
  53. public string[] NotAllowedExt { get; set; } = new string[0];
  54. }
  55. /// <summary>
  56. /// 阿里云存储
  57. /// </summary>
  58. public class ALIYUN_OSS
  59. {
  60. public string REGIONID { get; set; }
  61. public string KEY { get; set; }
  62. public string SECRET { get; set; }
  63. public string BucketName { get; set; }
  64. public string DomainUrl { get; set; }
  65. public int MaxSize { get; set; } = 100;
  66. }
  67. /// <summary>
  68. /// Jwt
  69. /// </summary>
  70. public class JwtSettings
  71. {
  72. /// <summary>
  73. /// token是谁颁发的
  74. /// </summary>
  75. public string Issuer { get; set; }
  76. /// <summary>
  77. /// token可以给那些客户端使用
  78. /// </summary>
  79. public string Audience { get; set; }
  80. /// <summary>
  81. /// 加密的key(SecretKey必须大于16个,是大于,不是大于等于)
  82. /// </summary>
  83. public string SecretKey { get; set; }
  84. /// <summary>
  85. /// token时间(分)
  86. /// </summary>
  87. public int Expire { get; set; } = 1440;
  88. /// <summary>
  89. /// 刷新token时长
  90. /// </summary>
  91. public int RefreshTokenTime { get; set; }
  92. /// <summary>
  93. /// token类型
  94. /// </summary>
  95. public string TokenType { get; set; } = "Bearer";
  96. }
  97. public class CodeGen
  98. {
  99. public bool ShowApp { get; set; }
  100. public bool AutoPre { get; set; }
  101. public string VuePath { get; set; }
  102. public string Author { get; set; }
  103. public string TablePrefix { get; set; }
  104. public string ModuleName { get; set; }
  105. public int FrontTpl { get; set; }
  106. public CsharpTypeArr CsharpTypeArr { get; set; }
  107. }
  108. public class DbConfigs
  109. {
  110. public string Conn { get; set; }
  111. public int DbType { get; set; }
  112. public string ConfigId { get; set; }
  113. public bool IsAutoCloseConnection { get; set; }
  114. public string DbName { get; set; }
  115. }
  116. public class CsharpTypeArr
  117. {
  118. public string[] String { get; set; }
  119. public string[] Int { get; set; }
  120. public string[] Long { get; set; }
  121. public string[] DateTime { get; set; }
  122. public string[] Float { get; set; }
  123. public string[] Decimal { get; set; }
  124. public string[] Bool { get; set; }
  125. }
  126. public class OssConfigs
  127. {
  128. public string Host { get; set; }
  129. public string Endpoint { get; set; }
  130. public string Key { get; set; }
  131. public string Secret { get; set; }
  132. public string BucketName { get; set; }
  133. }
  134. public class ServiceItem
  135. {
  136. public string Name { get; set; }
  137. public string Path { get; set; }
  138. }
  139. public class AesItem
  140. {
  141. public string EncodeKey { get; set; }
  142. public string EncodeIv { get; set; }
  143. public string EncodeMode { get; set; }
  144. public string EncodePadding { get; set; }
  145. }
  146. }