From 9bccc2c0c21cb92c1bd1597ebdafbebdcbddd71c Mon Sep 17 00:00:00 2001 From: xiaochanghai Date: Mon, 28 Oct 2024 17:05:52 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=9F=A5=E8=AF=A2=E6=8B=9B?= =?UTF-8?q?=E8=81=98=E5=85=AC=E5=8F=B8=E9=85=8D=E7=BD=AE=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/Ghrh/Ghrh_ResumeController.cs | 15 +- Tiobon.Core.Api/Tiobon.Core.xml | 6 + Tiobon.Core.Api/appsettings.json | 691 +++++++++--------- .../Ghrh/IGhrh_ResumeServices.cs | 2 + .../Ghrh/Ghrh_ResumeServices.cs | 75 ++ Tiobon.Core/Tiobon.Core.xml | 6 + 6 files changed, 451 insertions(+), 344 deletions(-) diff --git a/Tiobon.Core.Api/Controllers/Ghrh/Ghrh_ResumeController.cs b/Tiobon.Core.Api/Controllers/Ghrh/Ghrh_ResumeController.cs index e4fb614f..eadf8a14 100644 --- a/Tiobon.Core.Api/Controllers/Ghrh/Ghrh_ResumeController.cs +++ b/Tiobon.Core.Api/Controllers/Ghrh/Ghrh_ResumeController.cs @@ -134,11 +134,24 @@ public class Ghrh_ResumeController : BaseController /// - [HttpPost("CheckIsExist")] + [HttpPost("CheckIsExist"), AllowAnonymous] public async Task> CheckIsExist([FromBody] InsertGhrh_ResumeInput input) { return await _service.CheckIsExist(input); } #endregion + + #region 查询公司配置信息 + /// + /// 查询简历是否存在 + /// + /// + [HttpPost("QueryCompanyInfo/{companySpecCode}"), AllowAnonymous] + public async Task>> QueryCompanyInfo(string companySpecCode) + { + return await _service.QueryCompanyInfo(companySpecCode); + + } + #endregion } \ No newline at end of file diff --git a/Tiobon.Core.Api/Tiobon.Core.xml b/Tiobon.Core.Api/Tiobon.Core.xml index 78be0836..6ed7395f 100644 --- a/Tiobon.Core.Api/Tiobon.Core.xml +++ b/Tiobon.Core.Api/Tiobon.Core.xml @@ -1211,6 +1211,12 @@ + + + 查询简历是否存在 + + + 教育背景(Controller) diff --git a/Tiobon.Core.Api/appsettings.json b/Tiobon.Core.Api/appsettings.json index c0fff0b1..e1b58682 100644 --- a/Tiobon.Core.Api/appsettings.json +++ b/Tiobon.Core.Api/appsettings.json @@ -1,99 +1,99 @@ { - "urls": "http://*:9292", //web服务端口,如果用IIS部署,把这个去掉 - "Serilog": { - "MinimumLevel": { - "Default": "Debug", - "Override": { - "Microsoft": "Information", - "Microsoft.AspNetCore": "Warning", - "System": "Warning", - "System.Net.Http.HttpClient": "Warning", - "Hangfire": "Information", - "Magicodes": "Warning", - "DotNetCore.CAP": "Information", - "Savorboard.CAP": "Information", - "Quartz": "Information" - } - } - }, - "AllowedHosts": "*", - "Redis": { - "Enable": false, - "ConnectionString": "127.0.0.1:6379", - "InstanceName": "" //前缀 + "urls": "http://*:9292", //web服务端口,如果用IIS部署,把这个去掉 + "Serilog": { + "MinimumLevel": { + "Default": "Debug", + "Override": { + "Microsoft": "Information", + "Microsoft.AspNetCore": "Warning", + "System": "Warning", + "System.Net.Http.HttpClient": "Warning", + "Hangfire": "Information", + "Magicodes": "Warning", + "DotNetCore.CAP": "Information", + "Savorboard.CAP": "Information", + "Quartz": "Information" + } + } + }, + "AllowedHosts": "*", + "Redis": { + "Enable": false, + "ConnectionString": "127.0.0.1:6379", + "InstanceName": "" //前缀 + }, + "RabbitMQ": { + "Enabled": true, + "Connection": "101xxxx57", + "UserName": "xxxx", + "Password": "xxxxx", + "Port": "5672", + "RetryCount": 2 + }, + "Kafka": { + "Enabled": false, + "Servers": "localhost:9092", + "Topic": "Tiobon", + "GroupId": "Tiobon-consumer", + "NumPartitions": 3 //主题分区数量 + }, + "EventBus": { + "Enabled": false, + "SubscriptionClientName": "Tiobon.Core" + }, + "AppSettings": { + "CachingAOP": { + "Enabled": true }, - "RabbitMQ": { - "Enabled": true, - "Connection": "101xxxx57", - "UserName": "xxxx", - "Password": "xxxxx", - "Port": "5672", - "RetryCount": 2 + "LogToDb": true, + "LogAOP": { + "Enabled": false, + "LogToFile": { + "Enabled": true + }, + "LogToDB": { + "Enabled": true + } }, - "Kafka": { - "Enabled": false, - "Servers": "localhost:9092", - "Topic": "Tiobon", - "GroupId": "Tiobon-consumer", - "NumPartitions": 3 //主题分区数量 + "TranAOP": { + "Enabled": true }, - "EventBus": { - "Enabled": false, - "SubscriptionClientName": "Tiobon.Core" + "UserAuditAOP": { + "Enabled": false }, - "AppSettings": { - "CachingAOP": { - "Enabled": true - }, - "LogToDb": true, - "LogAOP": { - "Enabled": false, - "LogToFile": { - "Enabled": true - }, - "LogToDB": { - "Enabled": true - } - }, - "TranAOP": { - "Enabled": true - }, - "UserAuditAOP": { - "Enabled": false - }, - "SqlAOP": { - "Enabled": true, - "LogToFile": { - "Enabled": true - }, - "LogToDB": { - "Enabled": true - }, - "LogToConsole": { - "Enabled": true - } - }, - "Date": "2018-08-28", - "SeedDBEnabled": false, //只生成表结构 - "SeedDBDataEnabled": false, //生成表,并初始化数据 - "Author": "Tiobon.Core", - "SvcName": "", // /svc/Tiobon - "UseLoadTest": false + "SqlAOP": { + "Enabled": true, + "LogToFile": { + "Enabled": true + }, + "LogToDB": { + "Enabled": true + }, + "LogToConsole": { + "Enabled": true + } }, + "Date": "2018-08-28", + "SeedDBEnabled": false, //只生成表结构 + "SeedDBDataEnabled": false, //生成表,并初始化数据 + "Author": "Tiobon.Core", + "SvcName": "", // /svc/Tiobon + "UseLoadTest": false + }, - //优化DB配置、不会再区分单库多库 - //MainDb:标识当前项目的主库,所对应的连接字符串的Enabled必须为true - //Log:标识日志库,所对应的连接字符串的Enabled必须为true - //从库只需配置Slaves数组,要求数据库类型一致!,比如都是SqlServer - // - //新增,故障转移方案 - //如果主库挂了,会自动切换到备用连接(比如说主库+备用库) - //备用连接的ConnId配置为主库的ConnId+数字即可,比如主库的ConnId为Main,那么备用连接的ConnId为Mian1 - //主库、备用库无需数据库类型一致! - //备用库不会有程序维护,需要手动维护 - "MainDB": "WMTiobon_MSSQL_Main", //当前项目的主库,所对应的连接字符串的Enabled必须为true - "DBS": [ - /* + //优化DB配置、不会再区分单库多库 + //MainDb:标识当前项目的主库,所对应的连接字符串的Enabled必须为true + //Log:标识日志库,所对应的连接字符串的Enabled必须为true + //从库只需配置Slaves数组,要求数据库类型一致!,比如都是SqlServer + // + //新增,故障转移方案 + //如果主库挂了,会自动切换到备用连接(比如说主库+备用库) + //备用连接的ConnId配置为主库的ConnId+数字即可,比如主库的ConnId为Main,那么备用连接的ConnId为Mian1 + //主库、备用库无需数据库类型一致! + //备用库不会有程序维护,需要手动维护 + "MainDB": "WMTiobon_MSSQL_Main", //当前项目的主库,所对应的连接字符串的Enabled必须为true + "DBS": [ + /* 对应下边的 DBType MySql = 0, SqlServer = 1, @@ -103,270 +103,275 @@ Dm = 5,//达梦 Kdbndp = 6,//人大金仓 */ + { + "ConnId": "WMTiobon_MSSQL_Main", + "DBType": 1, + "Enabled": true, + "Connection": "Data Source=47.99.54.186;User ID=GHR;Password=Tiobon20190101;Database=GHR30;Encrypt=True;TrustServerCertificate=True;", + //"Connection": "Data Source=116.204.98.209;User ID=Tiobon;Password=&($!4UGUyU#$2sp9O;Database=Tiobon;Encrypt=True;TrustServerCertificate=True;", + "ProviderName": "System.Data.SqlClient" + }, + { + "ConnId": "Main", + "DBType": 2, + "Enabled": false, + "Connection": "WMTiobon.db", //sqlite只写数据库名就行 + "Slaves": [ { - "ConnId": "WMTiobon_MSSQL_Main", - "DBType": 1, - "Enabled": true, - "Connection": "Data Source=47.99.54.186;User ID=GHR;Password=Tiobon20190101;Database=GHR30;Encrypt=True;TrustServerCertificate=True;", - //"Connection": "Data Source=116.204.98.209;User ID=Tiobon;Password=&($!4UGUyU#$2sp9O;Database=Tiobon;Encrypt=True;TrustServerCertificate=True;", - "ProviderName": "System.Data.SqlClient" - }, - { - "ConnId": "Main", - "DBType": 2, - "Enabled": false, - "Connection": "WMTiobon.db", //sqlite只写数据库名就行 - "Slaves": [ - { - "HitRate": 0, // 值越大,优先级越高 0不使用 - "Connection": "WMTiobon2.db" - } - ] - }, - { - "ConnId": "Main2", - "DBType": 2, - "Enabled": false, - "Connection": "WMTiobon3.db", //sqlite只写数据库名就行 - "Slaves": [ - { - "HitRate": 0, // 值越大,优先级越高 0不使用 - "Connection": "WMTiobon4.db" - } - ] - }, - { - "ConnId": "Log", //日志库连接固定名称,不要改,其他的可以改 - "DBType": 1, - "Enabled": true, - "HitRate": 50, - "Connection": "Data Source=47.99.54.186;User ID=GHR;Password=Tiobon20190101;Database=GHR30;Encrypt=True;TrustServerCertificate=True;", - "ProviderName": "System.Data.SqlClient" - }, - { - "ConnId": "WMTiobon_MSSQL_1", - "DBType": 1, - "Enabled": false, - "Connection": "Data Source=(localdb)\\MSSQLLocalDB;Initial Catalog=WMTiobon_MSSQL_1;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", - "ProviderName": "System.Data.SqlClient" - }, - { - "ConnId": "WMTiobon_MSSQL_2", - "DBType": 1, - "Enabled": false, - "Connection": "Data Source=(localdb)\\MSSQLLocalDB;Initial Catalog=WMTiobon_MSSQL_2;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", - "ProviderName": "System.Data.SqlClient" - }, - { - "ConnId": "WMTiobon_MYSQL", - "DBType": 0, - "Enabled": false, - "Connection": "server=localhost;Database=Tiobon;Uid=root;Pwd=root;Port=3306;Allow User Variables=True;" - }, - { - "ConnId": "WMTiobon_MYSQL_2", - "DBType": 0, - "Enabled": false, - "Connection": "server=localhost;Database=Tioboncore001;Uid=root;Pwd=root;Port=3306;Allow User Variables=True;" - }, - { - "ConnId": "WMTiobon_ORACLE", - "DBType": 3, - "Enabled": false, - "Connection": "Data Source=127.0.0.1/ops;User ID=OPS;Password=123456;Persist Security Info=True;Connection Timeout=60;" - }, - { - "ConnId": "WMTiobon_DM", - "DBType": 5, - "Enabled": false, - "Connection": "Server=xxxxx:5236;User Id=xxxxx;PWD=xxxxx;SCHEMA=TESTDBA;" - }, + "HitRate": 0, // 值越大,优先级越高 0不使用 + "Connection": "WMTiobon2.db" + } + ] + }, + { + "ConnId": "Main2", + "DBType": 2, + "Enabled": false, + "Connection": "WMTiobon3.db", //sqlite只写数据库名就行 + "Slaves": [ { - "ConnId": "WMTiobon_KDBNDP", - "DBType": 6, - "Enabled": false, - "Connection": "Server=127.0.0.1;Port=54321;UID=SYSTEM;PWD=system;database=SQLSUGAR4XTEST1;" + "HitRate": 0, // 值越大,优先级越高 0不使用 + "Connection": "WMTiobon4.db" } - ], - "Audience": { - "Secret": "sdfsdfsrty45634kkhllghtdgdfss345t678fs", //不要太短,16位+ - "SecretFile": "C:\\my-file\\Tiobon.core.audience.secret.txt", //安全。内容就是Secret - "Issuer": "Tiobon.Core", //这个值一定要在自己的项目里修改!! - "Audience": "wr", //这个值一定要在自己的项目里修改!! - "ExpirationHour": 72 //过去时长,单位小时 + ] }, - "Mongo": { - "ConnectionString": "mongodb://nosql.data", - "Database": "TiobonCoreDb" + { + "ConnId": "Log", //日志库连接固定名称,不要改,其他的可以改 + "DBType": 1, + "Enabled": true, + "HitRate": 50, + "Connection": "Data Source=47.99.54.186;User ID=GHR;Password=Tiobon20190101;Database=GHR30;Encrypt=True;TrustServerCertificate=True;", + "ProviderName": "System.Data.SqlClient" }, - "Startup": { - "Domain": "http://localhost:9291", - "Cors": { - "PolicyName": "CorsIpAccess", //策略名称 - "EnableAllIPs": false, //当为true时,开放所有IP均可访问。 - // 支持多个域名端口,注意端口号后不要带/斜杆:比如localhost:8000/,是错的 - // 注意,http://127.0.0.1:1818 和 http://localhost:1818 是不一样的 - "IPs": "http://127.0.0.1:2364,http://localhost:2364,http://127.0.0.1:6688,http://localhost:6688" - }, - "AppConfigAlert": { - "Enabled": true - }, - "IdentityServer4": { - "Enabled": false, // 这里默认是false,表示使用jwt,如果设置为true,则表示系统使用Ids4模式 - "AuthorizationUrl": "http://localhost:5004", // 认证中心域名 - "ApiName": "Tiobon.core.api" // 资源服务器 - }, - "Authing": { - "Enabled": false, - "Issuer": "https://uldr24esx31h-demo.authing.cn/oidc", - "Audience": "63d51c4205c2849803be5178", - "JwksUri": "https://uldr24esx31h-demo.authing.cn/oidc/.well-known/jwks.json" - }, - "RedisMq": { - "Enabled": false //redis 消息队列 - }, - "MiniProfiler": { - "Enabled": false //性能分析开启 - }, - "Nacos": { - "Enabled": false //Nacos注册中心 - } + { + "ConnId": "WMTiobon_MSSQL_1", + "DBType": 1, + "Enabled": false, + "Connection": "Data Source=(localdb)\\MSSQLLocalDB;Initial Catalog=WMTiobon_MSSQL_1;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", + "ProviderName": "System.Data.SqlClient" }, - "Middleware": { - "RequestResponseLog": { - "Enabled": true, - "LogToFile": { - "Enabled": true - }, - "LogToDB": { - "Enabled": true - } - }, - "IPLog": { - "Enabled": true, - "LogToFile": { - "Enabled": true - }, - "LogToDB": { - "Enabled": true - } - }, - "RecordAccessLogs": { - "Enabled": true, - "LogToFile": { - "Enabled": true - }, - "LogToDB": { - "Enabled": true - }, - "IgnoreApis": "/api/permission/getnavigationbar,/api/monitor/getids4users,/api/monitor/getaccesslogs,/api/monitor/server,/api/monitor/getactiveusers,/api/monitor/server," - }, - "SignalR": { - "Enabled": false - }, - "SignalRSendLog": { - "Enabled": false - }, - "QuartzNetJob": { - "Enabled": true - }, - "Consul": { - "Enabled": false - }, - "IpRateLimit": { - "Enabled": false - }, - "EncryptionResponse": { - "Enabled": true, - "AllApis": false, - "LimitApis": [ - "/api/Login/GetJwtTokenSecret" - ] - }, - "EncryptionRequest": { - "Enabled": true, - "AllApis": false, - "LimitApis": [ - "/api/Login/GetJwtTokenSecret" - ] - } + { + "ConnId": "WMTiobon_MSSQL_2", + "DBType": 1, + "Enabled": false, + "Connection": "Data Source=(localdb)\\MSSQLLocalDB;Initial Catalog=WMTiobon_MSSQL_2;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", + "ProviderName": "System.Data.SqlClient" }, - "IpRateLimiting": { - "EnableEndpointRateLimiting": false, //False: globally executed, true: executed for each - "StackBlockedRequests": false, //False: Number of rejections should be recorded on another counter - "RealIpHeader": "X-Real-IP", - "ClientIdHeader": "X-ClientId", - "IpWhitelist": [], //白名单 - "EndpointWhitelist": [ "get:/api/xxx", "*:/api/yyy" ], - "ClientWhitelist": [ "dev-client-1", "dev-client-2" ], - "QuotaExceededResponse": { - "Content": "{{\"status\":429,\"msg\":\"访问过于频繁,请稍后重试\",\"success\":false}}", - "ContentType": "application/json", - "StatusCode": 429 - }, - "HttpStatusCode": 429, //返回状态码 - "GeneralRules": [ //api规则,结尾一定要带* - { - "Endpoint": "*:/api/Tiobon*", - "Period": "1m", - "Limit": 20 - }, - { - "Endpoint": "*/api/*", - "Period": "1s", - "Limit": 3 - }, - { - "Endpoint": "*/api/*", - "Period": "1m", - "Limit": 30 - }, - { - "Endpoint": "*/api/*", - "Period": "12h", - "Limit": 500 - } - ] - + { + "ConnId": "WMTiobon_MYSQL", + "DBType": 0, + "Enabled": false, + "Connection": "server=localhost;Database=Tiobon;Uid=root;Pwd=root;Port=3306;Allow User Variables=True;" }, - "ConsulSetting": { - "ServiceName": "TiobonCoreService", - "ServiceIP": "localhost", - "ServicePort": "9291", - "ServiceHealthCheck": "/healthcheck", - "ConsulAddress": "http://localhost:8500" + { + "ConnId": "WMTiobon_MYSQL_2", + "DBType": 0, + "Enabled": false, + "Connection": "server=localhost;Database=Tioboncore001;Uid=root;Pwd=root;Port=3306;Allow User Variables=True;" }, - "PayInfo": { //建行聚合支付信息 - "MERCHANTID": "", //商户号 - "POSID": "", //柜台号 - "BRANCHID": "", //分行号 - "pubKey": "", //公钥 - "USER_ID": "", //操作员号 - "PASSWORD": "", //密码 - "OutAddress": "http://127.0.0.1:12345" //外联地址 + { + "ConnId": "WMTiobon_ORACLE", + "DBType": 3, + "Enabled": false, + "Connection": "Data Source=127.0.0.1/ops;User ID=OPS;Password=123456;Persist Security Info=True;Connection Timeout=60;" }, - "nacos": { - "ServerAddresses": [ "http://localhost:8848" ], // nacos 连接地址 - "DefaultTimeOut": 15000, // 默认超时时间 - "Namespace": "public", // 命名空间 - "ListenInterval": 10000, // 监听的频率 - "ServiceName": "Tiobon.Core.Api", // 服务名 - "Port": "9291", // 服务端口号 - "RegisterEnabled": true // 是否直接注册nacos + { + "ConnId": "WMTiobon_DM", + "DBType": 5, + "Enabled": false, + "Connection": "Server=xxxxx:5236;User Id=xxxxx;PWD=xxxxx;SCHEMA=TESTDBA;" }, - "LogFiedOutPutConfigs": { - "tcpAddressHost": "", // 输出elk的tcp连接地址 - "tcpAddressPort": 0, // 输出elk的tcp端口号 - "ConfigsInfo": [ // 配置的输出elk节点内容 常用语动态标识 - { - "FiedName": "applicationName", - "FiedValue": "Tiobon.Core.Api" - } - ] + { + "ConnId": "WMTiobon_KDBNDP", + "DBType": 6, + "Enabled": false, + "Connection": "Server=127.0.0.1;Port=54321;UID=SYSTEM;PWD=system;database=SQLSUGAR4XTEST1;" + } + ], + "Audience": { + "Secret": "sdfsdfsrty45634kkhllghtdgdfss345t678fs", //不要太短,16位+ + "SecretFile": "C:\\my-file\\Tiobon.core.audience.secret.txt", //安全。内容就是Secret + "Issuer": "Tiobon.Core", //这个值一定要在自己的项目里修改!! + "Audience": "wr", //这个值一定要在自己的项目里修改!! + "ExpirationHour": 72 //过去时长,单位小时 + }, + "Mongo": { + "ConnectionString": "mongodb://nosql.data", + "Database": "TiobonCoreDb" + }, + "Startup": { + "Domain": "http://localhost:9291", + "Cors": { + "PolicyName": "CorsIpAccess", //策略名称 + "EnableAllIPs": false, //当为true时,开放所有IP均可访问。 + // 支持多个域名端口,注意端口号后不要带/斜杆:比如localhost:8000/,是错的 + // 注意,http://127.0.0.1:1818 和 http://localhost:1818 是不一样的 + "IPs": "http://127.0.0.1:2364,http://localhost:2364,http://127.0.0.1:6688,http://localhost:6688" + }, + "AppConfigAlert": { + "Enabled": true + }, + "IdentityServer4": { + "Enabled": false, // 这里默认是false,表示使用jwt,如果设置为true,则表示系统使用Ids4模式 + "AuthorizationUrl": "http://localhost:5004", // 认证中心域名 + "ApiName": "Tiobon.core.api" // 资源服务器 + }, + "Authing": { + "Enabled": false, + "Issuer": "https://uldr24esx31h-demo.authing.cn/oidc", + "Audience": "63d51c4205c2849803be5178", + "JwksUri": "https://uldr24esx31h-demo.authing.cn/oidc/.well-known/jwks.json" + }, + "RedisMq": { + "Enabled": false //redis 消息队列 + }, + "MiniProfiler": { + "Enabled": false //性能分析开启 + }, + "Nacos": { + "Enabled": false //Nacos注册中心 + } + }, + "Middleware": { + "RequestResponseLog": { + "Enabled": true, + "LogToFile": { + "Enabled": true + }, + "LogToDB": { + "Enabled": true + } + }, + "IPLog": { + "Enabled": true, + "LogToFile": { + "Enabled": true + }, + "LogToDB": { + "Enabled": true + } }, - "Seq": { - "Enabled": true, - "Address": "http://localhost:5341/", - "ApiKey": "" + "RecordAccessLogs": { + "Enabled": true, + "LogToFile": { + "Enabled": true + }, + "LogToDB": { + "Enabled": true + }, + "IgnoreApis": "/api/permission/getnavigationbar,/api/monitor/getids4users,/api/monitor/getaccesslogs,/api/monitor/server,/api/monitor/getactiveusers,/api/monitor/server," + }, + "SignalR": { + "Enabled": false + }, + "SignalRSendLog": { + "Enabled": false + }, + "QuartzNetJob": { + "Enabled": true + }, + "Consul": { + "Enabled": false + }, + "IpRateLimit": { + "Enabled": false + }, + "EncryptionResponse": { + "Enabled": true, + "AllApis": false, + "LimitApis": [ + "/api/Login/GetJwtTokenSecret" + ] + }, + "EncryptionRequest": { + "Enabled": true, + "AllApis": false, + "LimitApis": [ + "/api/Login/GetJwtTokenSecret" + ] } -} \ No newline at end of file + }, + "IpRateLimiting": { + "EnableEndpointRateLimiting": false, //False: globally executed, true: executed for each + "StackBlockedRequests": false, //False: Number of rejections should be recorded on another counter + "RealIpHeader": "X-Real-IP", + "ClientIdHeader": "X-ClientId", + "IpWhitelist": [], //白名单 + "EndpointWhitelist": [ "get:/api/xxx", "*:/api/yyy" ], + "ClientWhitelist": [ "dev-client-1", "dev-client-2" ], + "QuotaExceededResponse": { + "Content": "{{\"status\":429,\"msg\":\"访问过于频繁,请稍后重试\",\"success\":false}}", + "ContentType": "application/json", + "StatusCode": 429 + }, + "HttpStatusCode": 429, //返回状态码 + "GeneralRules": [ //api规则,结尾一定要带* + { + "Endpoint": "*:/api/Tiobon*", + "Period": "1m", + "Limit": 20 + }, + { + "Endpoint": "*/api/*", + "Period": "1s", + "Limit": 3 + }, + { + "Endpoint": "*/api/*", + "Period": "1m", + "Limit": 30 + }, + { + "Endpoint": "*/api/*", + "Period": "12h", + "Limit": 500 + } + ] + + }, + "ConsulSetting": { + "ServiceName": "TiobonCoreService", + "ServiceIP": "localhost", + "ServicePort": "9291", + "ServiceHealthCheck": "/healthcheck", + "ConsulAddress": "http://localhost:8500" + }, + "PayInfo": { //建行聚合支付信息 + "MERCHANTID": "", //商户号 + "POSID": "", //柜台号 + "BRANCHID": "", //分行号 + "pubKey": "", //公钥 + "USER_ID": "", //操作员号 + "PASSWORD": "", //密码 + "OutAddress": "http://127.0.0.1:12345" //外联地址 + }, + "nacos": { + "ServerAddresses": [ "http://localhost:8848" ], // nacos 连接地址 + "DefaultTimeOut": 15000, // 默认超时时间 + "Namespace": "public", // 命名空间 + "ListenInterval": 10000, // 监听的频率 + "ServiceName": "Tiobon.Core.Api", // 服务名 + "Port": "9291", // 服务端口号 + "RegisterEnabled": true // 是否直接注册nacos + }, + "LogFiedOutPutConfigs": { + "tcpAddressHost": "", // 输出elk的tcp连接地址 + "tcpAddressPort": 0, // 输出elk的tcp端口号 + "ConfigsInfo": [ // 配置的输出elk节点内容 常用语动态标识 + { + "FiedName": "applicationName", + "FiedValue": "Tiobon.Core.Api" + } + ] + }, + "Seq": { + "Enabled": true, + "Address": "http://localhost:5341/", + "ApiKey": "" + }, + "Resume": { + "CompanyName": "乔邦科技", + "LoginDesc": "应聘人员简历登记表", + "LoginTitle": "欢迎访问" + } +} diff --git a/Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs b/Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs index 7f060c30..2db51265 100644 --- a/Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs +++ b/Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs @@ -21,5 +21,7 @@ namespace Tiobon.Core.IServices Task MarkTags(List ids, List tags); Task> CheckIsExist(InsertGhrh_ResumeInput input); + + Task>> QueryCompanyInfo(string companySpecCode); } } \ No newline at end of file diff --git a/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs b/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs index 3748e4ae..491d92f8 100644 --- a/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs +++ b/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs @@ -2,6 +2,7 @@ using AgileObjects.AgileMapper; using Newtonsoft.Json.Linq; using SqlSugar; +using System.Collections.Generic; using System.Linq.Expressions; using Tiobon.Core.Common; using Tiobon.Core.Common.Caches; @@ -201,6 +202,59 @@ public class Ghrh_ResumeServices : BaseServices QueryById(object objId) + { + var result = await base.QueryById(objId); + List list = [result]; + var ids = list.Select(x => x.Id).ToList(); + var titleIds = list.Where(x => x.TitleId != null).Select(x => x.TitleId.Value).Distinct().ToList(); + + var titles = await Db.Queryable().Where(x => x.TitleID != null && titleIds.Contains(x.TitleID.Value)).ToListAsync(); + var eduBGs = await _ghre_ResumeEduBGServices.QueryDto(x => x.ResumeId != null && ids.Contains(x.ResumeId.Value)); + var workExps = await _ghre_ResumeWorkExpServices.QueryDto(x => x.ResumeId != null && ids.Contains(x.ResumeId.Value)); + eduBGs.ForEach(async x => + { + x.DegreeLevelLabel = await GetParaLabel("EducationalBGLevel", x.DegreeLevel); + x.BeginDate1 = DateTimeHelper.ConvertToDayString(x.BeginDate); + x.EndDate1 = DateTimeHelper.ConvertToDayString(x.EndDate); + }); + workExps.ForEach(x => + { + x.BeginDate1 = DateTimeHelper.ConvertToDayString(x.BeginDate); + x.EndDate1 = DateTimeHelper.ConvertToDayString(x.EndDate); + }); + + var tagIds = new List(); + list.ForEach(x => + { + if (x.Tags.IsNotEmptyOrNull()) + tagIds.AddRange(JsonHelper.JsonToObj>(x.Tags)); + }); + + tagIds = tagIds.Distinct().ToList(); + var tags = await _ghre_ResumeTagServices.QueryDto(x => tagIds.Contains(x.Id)); + list.ForEach(async x => + { + if (x.TitleId != null) x.TitleName = titles.Where(o => o.TitleID == x.TitleId).FirstOrDefault()?.TitleName; + x.GenderLabel = await GetParaLabel("Gender", x.Gender); + x.EducationLabel = await GetParaLabel("EducationalBGLevel", x.Education); + x.NationLabel = await GetParaLabel("A02", x.Nation); + x.MaritalStatusLabel = await GetParaLabel("A03", x.MaritalStatus); + x.PoliticStatusLabel = await GetParaLabel("A04", x.PoliticStatus); + x.UrgentRelationLabel = await GetParaLabel("SocialRelationType", x.UrgentRelation); + + x.EduBG = eduBGs.Where(o => x.Id == o.ResumeId).ToList(); + x.WorkExp = workExps.Where(o => x.Id == o.ResumeId).ToList(); + if (x.Tags.IsNotEmptyOrNull()) + { + var tagIds1 = JsonHelper.JsonToObj>(x.Tags); + x.TagList = tags.Where(o => tagIds1.Contains(o.Id)).Select(o => o.TagName).ToList(); + } + }); + + return list[0]; + } + #region 获取简历Tabs接口 public ServiceResult> QueryViewTab() { @@ -311,4 +365,25 @@ public class Ghrh_ResumeServices : BaseServices>> QueryCompanyInfo(string companySpecCode) + { + var url = await Db.Ado.GetStringAsync("SELECT LogoUrl FROM Ghrs_LoginPageSetting"); + Dictionary dict = new Dictionary() + { + { "CompanyName", AppSettings.app(new string[] { "Resume", "CompanyName" }) }, + { "LoginDesc", AppSettings.app(new string[] { "Resume", "LoginDesc" }) }, + { "LoginTitle", AppSettings.app(new string[] { "Resume", "LoginTitle" }) }, + { "StaffName", "姓名" }, + { "Mobile", "手机号" }, + { "IdCardNo", "身份证后六位" }, + { "AgainLoginText", "二次登录" }, + { "LoginBtnText", "登录" }, + { "LogoUrl", url } + }; + return ServiceResult>.OprateSuccess("查询成功", dict); + + } + #endregion } \ No newline at end of file diff --git a/Tiobon.Core/Tiobon.Core.xml b/Tiobon.Core/Tiobon.Core.xml index 78be0836..6ed7395f 100644 --- a/Tiobon.Core/Tiobon.Core.xml +++ b/Tiobon.Core/Tiobon.Core.xml @@ -1211,6 +1211,12 @@ + + + 查询简历是否存在 + + + 教育背景(Controller)