{ "$schema": "https://gitee.com/dotnetchina/Furion/raw/v4/schemas/v4/furion-schema.json", "SpecificationDocumentSettings": { "DocumentTitle": "规范化接口", "GroupOpenApiInfos": [ { "Group": "Default", "Title": "后端接口", "Description": "让 .NET 开发更简单,更通用,更流行。", "Version": "1.0.0", "TermsOfService": "https://furion.baiqian.ltd", "Contact": { "Name": "百小僧", "Url": "https://gitee.com/monksoul", "Email": "monksoul@outlook.com" }, "License": { "Name": "Apache-2.0", "Url": "https://gitee.com/dotnetchina/Furion/blob/rc1/LICENSE" } } ] }, "DynamicApiControllerSettings": { "CamelCaseSeparator": "" }, "CorsAccessorSettings": { "WithExposedHeaders": [ "access-token", "x-access-token", "environment" ] }, //ORM数据库连接配置 文档:https://www.donet5.com/Home/Doc?typeId=1181 "DbConnection": { "Connections": [ { "ConfigId": 1, "DbType": "SqlServer", // MySql、SqlServer、Sqlite、Oracle、PostgreSQL、Dm、Kdbndp、Oscar、MySqlConnector、Access、OpenGauss、QuestDB、HG、ClickHouse、GBase、Odbc、Custom "ConnectionString": "Data Source=rm-uf64b8oxdt19pfyxfao.sqlserver.rds.aliyuncs.com;Database=EventServerDB_QA;User ID=qa;Password=Admin@123;Connect Timeout=500;Encrypt=True;TrustServerCertificate=True;", //"ConnectionString": "Data Source=rm-uf64b8oxdt19pfyxfao.sqlserver.rds.aliyuncs.com;Database=EventServerDB;User ID=yd;Password=Admin@123456;Connect Timeout=500;Encrypt=True;TrustServerCertificate=True;", "IsAutoCloseConnection": true, "EnableInitDb": false // 启用数据库以及数据表初始化(首次运行项目时开启可以自动创建数据库和初始化项目运行的基础数据) } ] }, //缓存配置 文档:https://easycaching.readthedocs.io/en/latest/ "easycaching": { "csredis": { "MaxRdSecond": 120, "EnableLogging": false, "LockMs": 5000, "SleepMs": 300, "dbconfig": { "ConnectionStrings": [ "8.153.108.90,Password=yd708090,SyncTimeout=15000,ConnectTimeout=15000,ResponseTimeout=15000,defaultDatabase=7,poolsize=100,ssl=false,writeBuffer=10240,idleTimeout=30000,connectRetry=3,asyncPipeline=false" //"8.153.108.90,Password=yd708090,SyncTimeout=15000,ConnectTimeout=15000,ResponseTimeout=15000,defaultDatabase=8,poolsize=100,ssl=false,writeBuffer=10240,idleTimeout=30000,connectRetry=3,asyncPipeline=false" ], //"Sentinels": [ // "192.169.1.10:26379", // "192.169.1.11:26379", // "192.169.1.12:26379" //], "ReadOnly": false } }, "inmemory": { "MaxRdSecond": 120, "EnableLogging": false, "LockMs": 5000, "SleepMs": 300, "DBConfig": { "SizeLimit": 10000, "ExpirationScanFrequency": 60, "EnableReadDeepClone": true, "EnableWriteDeepClone": false } }, "type": "csredis" //使用缓存类型 }, //对象存储配置 文档:https://github.com/oncemi/OnceMi.AspNetCore.OSS "OssConnection": { "Enable": true, //是否启用对象存储(不启用将存储至站点目录) "Endpoint": "oss-cn-shanghai.aliyuncs.com", //阿里云OSS节点 "AccessKeyId": "LTAI5tLfbdZwBoA9bCZVjZkF", //阿里云OSS AccessKeyId "AccessKeySecret": "4DmFIY77zwdp1gaRUTmBMf7WfdsNsC", //阿里云OSS AccessKeySecret "Bucket": "skip81", //存储桶名称 "Domain": "https://skip81.oss-cn-shanghai.aliyuncs.com" //外网访问域名或IP }, // 接入第三方授权登录 文档:https://github.com/mrhuo/MrHuo.OAuth // QQ授权申请地址:https://connect.qq.com/ "oauth": { "qq": { "app_id": "你的app_id", "app_key": "你的key", "redirect_uri": "https://你的域名/api/oauth/qq/callback", "scope": "get_user_info" } }, // 微信小程序配置 "WeChat": { "AppId": "wxf5a3f98d44c3a563", "Secret": "ef6d17e0419700c137e066aa3dce23ca" }, // 微信支付配置 "WechatTenpayClient": { "AppId": "wxf5a3f98d44c3a563", "MerchantId": "1632370609", "MerchantV3Secret": "7k9P2sR5tG8bQzX1jL0hY7cV3mN6aD2f", "MerchantCertificateSerialNumber": "7BB97914317836900D0B536A07DEA631909D9631", "MerchantCertificatePrivateKey": "-----BEGIN PRIVATE KEY-----\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQCoHeoYi3wMxmFX\nPlMS5Z8JRPGVrKcrkWbK6ds4QQ7iAzRfe3LjYrIqnHkzEisFEW9ZjPA3vqWj2Sr7\nUhkvE+e7PZ46kPsY8kO6Or+Md5OGscgTAVID0Mu8LIctpAWPPBMsWYRFr8zBDAUA\nOVdZ9dqww2sFH5gMBVxHUP40eU9acA9BDc0hFyq2OLL9UQ0IQIWYU169HCIsplE4\nx1RROQld7+gNqSdtUveuwQcpBHO3nmX5ZmvdC/2z+v1fK1uhPV9EjE3t1akLFbq2\nMcFTKSYMZ1+/+JsftNvoueSsiu5A1l4l9UANClFQJhAAqBZeXLp+2QEyREcdNSTM\nZ+hYzqO/AgMBAAECggEAP8dxizRHsJUGUtHbNF0Ws66LNGxW02mLJMoJl9LesZHj\nqaGs2WUVEKNiO6TV20tdAg09CPjz4DBAZS4lTb3weRGMWM2t5S3r0df92W138264\n57Tlh3sL/+yosAD89vUklPu0+bcTJ93Ge+pFIGTsPYk1rbDpvw29j3TDq+al2znw\nq2pc44r12pufVq1EjvpRoCBZfrUzpqmEc3EC/M4MLrfPA2eYQW1Fb0m2babGXfA8\nwLrb2ZL/U20HDqogz2TMayCiAaD3IGTFK5xtPmriF8BYdyev3oHny53yelxp7Fvh\nzx8mO3McMcLyVU4gmGJxiE4QpatH4X3EIxKU/MvdaQKBgQDUdwqNh7IhezDH8acd\nfXlT/21J+wBt7/NnznC5Olz1PNvp8a+t+eGCU3e4Cc2a0sRwA765gXGkilrUQ64f\nsLcOPXIFXytGF0CvPxbHLhmeSHbuNC0xnZFd17hquwKvTwL65UgBwBpuvQFm4pAZ\n4xdb3zcxhBDWHzYayxQvz0633QKBgQDKkJGP/qFzjlBVXQUZC2G3XSN45pIrx62j\ni1Vlj2EEEbdGrSCSzO8t34BQw/8CcWbUT6ufvMg67Y16Vstw3jthjeSDnWkMRgJP\n9qQbPTRYWASUw9YhZoak1l7KtzwnAf49XJyCDh1zTXnkuJDzHecQxl8SAKKGGikd\nNa1Mk0B+SwKBgQCFQ+GvomSd0ZpoX2/V9ITspfNUCwda7b3756YW2L/D5xd9ZuYt\ntuW3DEm0exmmufsS05aG3uV8MngEWitWn05CtVHWgrou7ZjaEzVjW8wf1w4aHUoX\nq+CpPwzijUiC04ln+/atemRZ/11ovkVqp2FYc+s3uMGivNL//U89KcgTVQKBgQCW\n1hoeUGym4KU/O3oNUSVdZhSA9aiIwzKwYpOfgamrXwnLriVgSwwba59gBOKCTjFV\nDVJuKyQqhTPhknoBPOqY1REBVJihlAwqwS0oP2YYFsqqgD2WN4MxgZOqfdFj9p77\n0FeWnK4fauTGhQ0ii/TA0AaBIEnlc9uDrbGzIL9YiwKBgQCkdc9ek4qUfs4RSJDd\nV4TLDo+qz4NlBAWLnGiIhDqehWVBbfl5xt/fkDf4+qcaw6msmjw0Dxjo02erym5T\nyr0z6YJdZRxWtDBcCOnAM0FBS0Z3BwjSw0MDY4NgvGJxrWXJzNlzx8TXBTcWCEO1\nIUAuPZn6wGMtOS1TJpLMH7wqpg==\n-----END PRIVATE KEY-----", "NotifyUrl": "https://yourdomain.com/api/wechat/notify" }, // 雪花id 文档:https://github.com/yitter/IdGenerator "SnowId": { "Method": 1, //雪花计算方法(1-漂移算法|2-传统算法),默认1 "BaseTime": "2023-01-01 08:00:00", //不能超过当前系统时间 "WorkerId": 0, //机器码, 最大值 2^WorkerIdBitLength-1 "WorkerIdBitLength": 6, // 机器码位长 , 默认值6,取值范围 [1, 15](要求:序列数位长+机器码位长不超过22) "SeqBitLength": 6, //序列数位长,默认值6,取值范围 [3, 21](要求:序列数位长+机器码位长不超过22) "MaxSeqNumber": 0, //最大序列数(含),设置范围 [MinSeqNumber, 2^SeqBitLength-1],默认值0,表示最大序列数取最大值(2^SeqBitLength-1]) "MinSeqNumber": 5, //最小序列数(含),默认值5,取值范围 [5, MaxSeqNumber],每毫秒的前5个序列数对应编号0-4是保留位,其中1-4是时间回拨相应预留位,0是手工新值预留位 "TopOverCostCount": 2000, //最大漂移次数(含),默认2000,推荐范围500-10000(与计算能力有关) "DataCenterId": 0, //数据中心ID(默认0),每台服务器需要设置不同值 "DataCenterIdBitLength": 0, //数据中心ID(默认0) "TimestampType": 0 //时间戳类型(0-毫秒,1-秒),默认0 }, // 日志配置 "Logging": { "Monitor": { "GlobalEnabled": true, // 是否启用全局拦截,默认 `false` "IncludeOfMethods": [], // 是否指定拦截特定方法,当 GlobalEnabled: false 有效 "ExcludeOfMethods": [], // 是否指定排除特定方法,当 GlobalEnabled: true 有效 "BahLogLevel": "Information", // 配置 Oops.Oh 和 Oops.Bah 业务日志输出级别,默认 Information "WithReturnValue": true, // 配置是否包含返回值,默认 `true`,Furion 4.3.9+ 有效 "ReturnValueThreshold": 0, // 配置返回值字符串阈值,默认 0,全量输出,Furion 4.3.9+ 有效 "JsonBehavior": "None", // 配置 LoggingMonitor Json 输出行为,默认 None,Furion 4.5.2+ 有效 "JsonIndented": false, // 配置 LoggingMonitor Json 格式化行为,默认 false,Furion 4.8.2+ 有效 "ContractResolver": "CamelCase" // 配置 LoggingMonitor 序列化属性命名规则,默认 CamelCase,Furion 4.8.6.12+ 有效 //"MethodsSettings": [ // // 配置被监视方法更多信息,Furion 4.3.9+ 有效 // { // "FullName": "Furion.Application.TestLoggerServices.MethodName", // 方法完全限定名 // "WithReturnValue": true, // 配置是否包含返回值,默认 `true`,Furion 4.3.9+ 有效 // "ReturnValueThreshold": 0, // 配置返回值字符串阈值,默认 0,全量输出,Furion 4.3.9+ 有效 // "JsonIndented": false, // 配置 LoggingMonitor Json 格式化行为,默认 false,Furion 4.8.2+ 有效 // "JsonBehavior": "None", // 配置 LoggingMonitor Json 输出行为,默认 None,Furion 4.5.2+ 有效 // "ContractResolver": "CamelCase" // 配置 LoggingMonitor 序列化属性命名规则,默认 CamelCase,Furion 4.8.6.12+ 有效 // } //] } }, // 阿里云短信配置 "ALiYunSMS": { "AccessKeyId": "LTAI5tLfbdZwBoA9bCZVjZkF", "AccessKeySecret": "4DmFIY77zwdp1gaRUTmBMf7WfdsNsC", "Endpoint": "dysmsapi.aliyuncs.com", "Sign": "上海市跳绳协会", "Template": "SMS_254100608", "CheckinNoticeTemplate": "" }, // 阿里云ORC识别 "AliyunOCR": { "AccessKeyId": "LTAI5tLfbdZwBoA9bCZVjZkF", "AccessKeySecret": "4DmFIY77zwdp1gaRUTmBMf7WfdsNsC", "Endpoint": "ocr-api.cn-hangzhou.aliyuncs.com" }, // 角色配置 "RoleSettings": { "AdminRoleId": 1000, "EventManagerRoleId": 1002, "UnitUserRoleId": 1001, "ScoringUnitRoleId": 1003, "HiddenMenuIds": [2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009] } }