add logs system

This commit is contained in:
Suphonchai Phoonsawat 2025-03-31 13:10:57 +07:00
parent c91666726a
commit 996c08c9e8
29 changed files with 454 additions and 3035 deletions

Binary file not shown.

View file

@ -38,6 +38,7 @@
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.17.0" />
<PackageReference Include="MongoDB.Driver" Version="2.19.0" />
<PackageReference Include="MongoDB.Driver.GridFS" Version="2.19.0" />
<PackageReference Include="NEST" Version="7.17.5" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="7.0.0" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql.Design" Version="1.1.2" />

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ActiveDebugProfile>https</ActiveDebugProfile>
<ActiveDebugProfile>dotnet</ActiveDebugProfile>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DebuggerFlavor>ProjectDebugger</DebuggerFlavor>

View file

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace BMA.EHR.Recruit.Service.Core
{
public class DateTimeFixConverter : JsonConverter<DateTime>
{
public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
if (reader.TokenType == JsonTokenType.String)
{
if (DateTime.TryParse(reader.GetString(), out var date))
{
return date;
}
}
throw new JsonException("Invalid date format.");
}
public override void Write(Utf8JsonWriter writer, DateTime value, JsonSerializerOptions options)
{
writer.WriteStringValue(value.ToString("yyyy-MM-dd"));
}
}
}

View file

@ -0,0 +1,264 @@
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Configuration;
using Nest;
using Newtonsoft.Json;
using System.Diagnostics;
using System.Net.Http.Headers;
using System.Security.Claims;
using System.Text.Encodings.Web;
using System.Text.Json;
using JsonSerializer = System.Text.Json.JsonSerializer;
namespace BMA.EHR.Recruit.Service.Core
{
public class RequestLoggingMiddleware
{
private readonly RequestDelegate _next;
private readonly IConfiguration _configuration;
private string Uri = "";
private string IndexFormat = "";
private string SystemName = "";
private string APIKey = "";
public RequestLoggingMiddleware(RequestDelegate next, IConfiguration configuration)
{
_next = next;
_configuration = configuration;
Uri = _configuration["ElasticConfiguration:Uri"] ?? "http://192.168.1.40:9200";
IndexFormat = _configuration["ElasticConfiguration:IndexFormat"] ?? "bma-ehr-log-index";
SystemName = _configuration["ElasticConfiguration:SystemName"] ?? "Unknown";
}
protected async Task<string> GetExternalAPIAsync(string apiPath, string accessToken, string apiKey)
{
try
{
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken.Replace("Bearer ", ""));
client.DefaultRequestHeaders.Add("api_key", apiKey);
var _res = await client.GetAsync(apiPath);
if (_res.IsSuccessStatusCode)
{
var _result = await _res.Content.ReadAsStringAsync();
return _result;
}
return string.Empty;
}
}
catch
{
throw;
}
}
public async Task<GetProfileByKeycloakIdLocal?> GetProfileByKeycloakIdAsync(Guid keycloakId, string? accessToken)
{
try
{
var apiPath = $"{_configuration["API"]}/org/dotnet/keycloak/{keycloakId}";
var apiKey = _configuration["API_KEY"];
var apiResult = await GetExternalAPIAsync(apiPath, accessToken ?? "", apiKey);
if (apiResult != null)
{
var raw = JsonConvert.DeserializeObject<GetProfileByKeycloakIdResultLocal>(apiResult);
if (raw != null)
return raw.Result;
}
return null;
}
catch
{
throw;
}
}
public async Task Invoke(HttpContext context)
{
var settings = new ConnectionSettings(new Uri(Uri))
.DefaultIndex(IndexFormat);
var client = new ElasticClient(settings);
var startTime = DateTime.UtcNow;
var stopwatch = Stopwatch.StartNew();
string? responseBodyJson = null;
string? requestBodyJson = null;
string requestBody = await ReadRequestBodyAsync(context);
if (requestBody != "")
{
if (context.Request.HasFormContentType)
{
var form = await context.Request.ReadFormAsync(); // อ่าน form-data
var formData = new Dictionary<string, object>();
foreach (var field in form)
{
formData[field.Key] = field.Value.ToString();
}
// อ่านไฟล์ที่ถูกส่งมา (ถ้ามี)
if (form.Files.Count > 0)
{
var fileDataList = new List<object>();
foreach (var file in form.Files)
{
fileDataList.Add(new
{
FileName = file.FileName,
ContentType = file.ContentType,
Size = file.Length
});
}
formData["Files"] = fileDataList;
}
requestBodyJson = JsonSerializer.Serialize(formData, new JsonSerializerOptions { Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping, WriteIndented = true, Converters = { new DateTimeFixConverter() } });
}
else
{
requestBodyJson = JsonSerializer.Serialize(JsonSerializer.Deserialize<object>(requestBody), new JsonSerializerOptions { Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping, WriteIndented = true, Converters = { new DateTimeFixConverter() } });
}
}
var originalBodyStream = context.Response.Body;
using (var memoryStream = new MemoryStream())
{
// เปลี่ยน stream ของ Response เพื่อให้สามารถอ่านได้
context.Response.Body = memoryStream;
var keycloakId = context.User?.FindFirst(ClaimTypes.NameIdentifier)?.Value ?? Guid.Empty.ToString("D");
var token = context.Request.Headers["Authorization"];
var pf = await GetProfileByKeycloakIdAsync(Guid.Parse(keycloakId), token);
await _next(context); // ดำเนินการต่อไปยัง Middleware อื่น ๆ
stopwatch.Stop();
var processTime = stopwatch.ElapsedMilliseconds;
var endTime = DateTime.UtcNow;
var logType = context.Response.StatusCode switch
{
>= 500 => "error",
>= 400 => "warning",
_ => "info"
};
string? message = null;
// อ่านข้อมูลจาก Response หลังจากที่ได้ถูกส่งออกไป
memoryStream.Seek(0, SeekOrigin.Begin);
var responseBody = new StreamReader(memoryStream).ReadToEnd();
if (responseBody != "")
responseBodyJson = JsonSerializer.Serialize(JsonSerializer.Deserialize<object>(responseBody), new JsonSerializerOptions { Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping, WriteIndented = true, Converters = { new DateTimeFixConverter() } });
var json = JsonSerializer.Deserialize<JsonElement>(responseBody);
if (json.TryGetProperty("message", out var messageElement))
{
message = messageElement.GetString();
}
var logData = new
{
logType = logType,
ip = context.Connection.RemoteIpAddress?.ToString(),
rootId = pf == null ? null : pf.RootId,
systemName = SystemName,
startTimeStamp = startTime.ToString("o"),
endTimeStamp = endTime.ToString("o"),
processTime = processTime,
host = context.Request.Host.Value,
method = context.Request.Method,
endpoint = context.Request.Path + context.Request.QueryString,
responseCode = context.Response.StatusCode == 304 ? "200" : context.Response.StatusCode.ToString(),
responseDescription = message,
input = requestBodyJson,
output = responseBodyJson,
userId = keycloakId,
userName = $"{pf?.Prefix ?? ""}{pf?.FirstName ?? ""} {pf?.LastName ?? ""}",
user = pf?.CitizenId ?? ""
};
// เขียนข้อมูลกลับไปยัง original Response body
memoryStream.Seek(0, SeekOrigin.Begin);
await memoryStream.CopyToAsync(originalBodyStream);
client.IndexDocument(logData);
}
//Log.Information("API Request Log: {@LogData}", logData);
}
private async Task<string> ReadRequestBodyAsync(HttpContext context)
{
context.Request.EnableBuffering();
using var reader = new StreamReader(context.Request.Body, leaveOpen: true);
var body = await reader.ReadToEndAsync();
context.Request.Body.Position = 0;
return body;
}
}
public class GetProfileByKeycloakIdLocal
{
public Guid Id { get; set; }
public string? Prefix { get; set; }
public string? FirstName { get; set; }
public string? LastName { get; set; }
public string? CitizenId { get; set; }
public string? Root { get; set; }
public string? Child1 { get; set; }
public string? Child2 { get; set; }
public string? Child3 { get; set; }
public string? Child4 { get; set; }
public Guid? RootId { get; set; }
public Guid? Child1Id { get; set; }
public Guid? Child2Id { get; set; }
public Guid? Child3Id { get; set; }
public Guid? Child4Id { get; set; }
public Guid? RootDnaId { get; set; }
public Guid? Child1DnaId { get; set; }
public Guid? Child2DnaId { get; set; }
public Guid? Child3DnaId { get; set; }
public Guid? Child4DnaId { get; set; }
public double? Amount { get; set; }
public double? PositionSalaryAmount { get; set; }
public string? Commander { get; set; }
public Guid? CommanderId { get; set; }
public Guid? CommanderKeycloak { get; set; }
}
public class GetProfileByKeycloakIdResultLocal
{
public string Message { get; set; } = string.Empty;
public int Status { get; set; } = -1;
public GetProfileByKeycloakIdLocal? Result { get; set; }
}
}

View file

@ -1,22 +1,23 @@
using Microsoft.AspNetCore.Mvc.Versioning;
using Microsoft.AspNetCore.Mvc;
using Microsoft.IdentityModel.Logging;
using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.IdentityModel.Tokens;
using System.Text;
using Serilog.Sinks.Elasticsearch;
using Serilog;
using System.Reflection;
using Serilog.Exceptions;
using Microsoft.EntityFrameworkCore;
using MongoDB.Bson.Serialization.Serializers;
using MongoDB.Bson.Serialization;
using MongoDB.Bson;
using BMA.EHR.Recruit.Service.Data;
using BMA.EHR.Recruit.Service;
using Microsoft.AspNetCore.Mvc.ApiExplorer;
using BMA.EHR.Recruit.Service.Core;
using BMA.EHR.Recruit.Service.Data;
using BMA.EHR.Recruit.Service.Services;
using BMA.EHR.Recurit.Service.Data;
using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.ApiExplorer;
using Microsoft.AspNetCore.Mvc.Versioning;
using Microsoft.EntityFrameworkCore;
using Microsoft.IdentityModel.Logging;
using Microsoft.IdentityModel.Tokens;
using MongoDB.Bson;
using MongoDB.Bson.Serialization;
using MongoDB.Bson.Serialization.Serializers;
using Serilog;
using Serilog.Exceptions;
using Serilog.Sinks.Elasticsearch;
using System.Reflection;
using System.Text;
var builder = WebApplication.CreateBuilder(args);
var issuer = builder.Configuration["Jwt:Issuer"];
@ -67,8 +68,8 @@ builder.Services.AddTransient<MinIOService>();
builder.Services.AddTransient<PermissionRepository>();
// use serilog
ConfigureLogs();
builder.Host.UseSerilog();
//ConfigureLogs();
//builder.Host.UseSerilog();
BsonSerializer.RegisterSerializer(new GuidSerializer(BsonType.String));
BsonSerializer.RegisterSerializer(new DateTimeSerializer(BsonType.String));
@ -136,6 +137,8 @@ app.UseDefaultFiles();
app.UseStaticFiles();
app.MapControllers();
app.UseMiddleware<RequestLoggingMiddleware>();
// apply migrations
await using var scope = app.Services.CreateAsyncScope();
await using var db = scope.ServiceProvider.GetRequiredService<ApplicationDbContext>();

View file

@ -7,32 +7,5 @@
"System": "Warning"
}
}
},
"ElasticConfiguration": {
"Uri": "http://localhost:9200"
},
"AllowedHosts": "*",
"ConnectionStrings": {
"MongoConnection": "mongodb://admin:adminVM123@127.0.0.1:27017",
"DefaultConnection": "server=192.168.1.80;user=root;password=adminVM123;port=3306;database=bma_ehr_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;",
"OrgConnection": "server=192.168.1.80;user=root;password=adminVM123;port=3306;database=bma_ehr_organization_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;",
"RecruitConnection": "server=192.168.1.80;user=root;password=adminVM123;database=bma_recruit_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;"
},
"Jwt": {
"Key": "HP-FnQMUj9msHMSD3T9HtdEnphAKoCJLEl85CIqROFI",
"Issuer": "https://id.frappet.synology.me/realms/bma-ehr"
},
"EPPlus": {
"ExcelPackage": {
"LicenseContext": "NonCommercial"
}
},
"MinIO": {
"Endpoint": "https://edm-s3.frappet.synology.me/",
"AccessKey": "XxtdnJajPjp3hHuKdOMn",
"SecretKey": "rVPzB05giC7bA400cUuIThzT4T9SGCcpcmL3tBBg",
"BucketName": "bma-ehr-fpt"
},
"API": "https://bma-ehr.frappet.synology.me/api/v1",
"API_KEY": "fKRL16yyEgbyTEJdsMw2h64tGSCmkW685PRtM3CygzX1JOSdptT9UJtpgWwKM8FybRTJups3GTFwj27ZRvlPdIkv3XgCoVJaD5LmR06ozuEPvCCRSdp2WFthg08V5xHc56fTPfZLpr1VmXrhd6dvYhHIqKkQUJR02Rlkss11cLRWEQOssEFVA4xdu2J5DIRO1EM5m7wRRvEwcDB4mYRXD9HH52SMq6iYqUWEWsMwLdbk7QW9yYESUEuzMW5gWrb6vIeWZxJV5bTz1PcWUyR7eO9Fyw1F5DiQYc9JgzTC1mW7cv31fEtTtrfbJYKIb5EbWilqIEUKC6A0UKBDDek35ML0006cqRVm0pvdOH6jeq7VQyYrhdXe59dBEyhYGUIfozoVBvW7Up4QBuOMjyPjSqJPlMBKwaseptfrblxQV1AOOivSBpf1ZcQyOZ8JktRtKUDSuXsmG0lsXwFlI3JCeSHdpVdgZWFYcJPegqfrB6KotR02t9AVkpLs1ZWrixwz"
}

View file

@ -9,18 +9,20 @@
}
},
"ElasticConfiguration": {
"Uri": "http://localhost:9200"
"Uri": "http://192.168.1.40:9200",
"IndexFormat": "bma-ehr-log-index",
"SystemName": "recruiting"
},
"AllowedHosts": "*",
"ConnectionStrings": {
"MongoConnection": "mongodb://admin:adminVM123@127.0.0.1:27017",
"DefaultConnection": "server=192.168.1.80;user=root;password=adminVM123;port=3306;database=bma_ehr_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;",
"OrgConnection": "server=192.168.1.80;user=root;password=adminVM123;port=3306;database=bma_ehr_organization_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;",
"RecruitConnection": "server=192.168.1.80;user=root;password=adminVM123;database=bma_recruit_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;"
"DefaultConnection": "server=192.168.1.80;user=root;password=adminVM123;port=3306;database=hrms;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;",
"OrgConnection": "server=192.168.1.80;user=root;password=adminVM123;port=3306;database=hrms_organization;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;",
"RecruitConnection": "server=192.168.1.80;user=root;password=adminVM123;database=hrms_recruit;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;"
},
"Jwt": {
"Key": "HP-FnQMUj9msHMSD3T9HtdEnphAKoCJLEl85CIqROFI",
"Issuer": "https://id.frappet.synology.me/realms/bma-ehr"
"Issuer": "https://id.frappet.synology.me/realms/hrms"
},
"EPPlus": {
"ExcelPackage": {

View file

@ -22,6 +22,7 @@
"Microsoft.VisualStudio.Azure.Containers.Tools.Targets": "1.17.0",
"MongoDB.Driver": "2.19.0",
"MongoDB.Driver.GridFS": "2.19.0",
"NEST": "7.17.5",
"Newtonsoft.Json": "13.0.3",
"Pomelo.EntityFrameworkCore.MySql": "7.0.0",
"Pomelo.EntityFrameworkCore.MySql.Design": "1.1.2",
@ -1347,6 +1348,17 @@
}
}
},
"NEST/7.17.5": {
"dependencies": {
"Elasticsearch.Net": "7.17.5"
},
"runtime": {
"lib/netstandard2.0/Nest.dll": {
"assemblyVersion": "7.0.0.0",
"fileVersion": "7.17.5.0"
}
}
},
"NETStandard.Library/1.6.1": {
"dependencies": {
"Microsoft.NETCore.Platforms": "5.0.0",
@ -3846,6 +3858,13 @@
"path": "mysqlconnector/2.2.5",
"hashPath": "mysqlconnector.2.2.5.nupkg.sha512"
},
"NEST/7.17.5": {
"type": "package",
"serviceable": true,
"sha512": "sha512-bo9UyuIoVRx4IUQiuC8ZrlZuvAXKIccernC7UUKukQCEmRq2eVIk+gubHlnMQljrP51q0mN4cjgy9vv5uZPkoA==",
"path": "nest/7.17.5",
"hashPath": "nest.7.17.5.nupkg.sha512"
},
"NETStandard.Library/1.6.1": {
"type": "package",
"serviceable": true,

View file

@ -1,549 +1,3 @@
<<<<<<< HEAD
<?xml version="1.0"?>
<doc>
<assembly>
<name>BMA.EHR.Recruit.Service</name>
</assembly>
<members>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.UploadFile">
<summary>
ตัวอย่างในการเขียน api เพื่อทำการ upload file
</summary>
<returns></returns>
<response code="200">เมื่อทำการ upload สำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.DeleteFile(System.Guid)">
<summary>
ตัวอย่างในการเขียน api เพื่อทำการ delete file
</summary>
<param name="id">รหัสไฟล์ในฐานข้อมูล</param>
<returns></returns>
<response code="200">เมื่อทำการ delete file สำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.DownloadFile(System.Guid)">
<summary>
ตัวอย่างในการเขียน api เพื่อทำการ download file
</summary>
<param name="id">รหัสไฟล์ในฐานข้อมูล</param>
<returns></returns>
<response code="200">เมื่อทำการ download file สำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.GetPeriodsAsync">
<summary>
แสดงข้อมูลรอบการสอบแข่งขัน
</summary>
<returns></returns>
<response code="200">เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.GetPeriodByIdAsync(System.Guid)">
<summary>
แสดงข้อมูลรอบการสอบแข่งขันเป็นรายการ
</summary>
<param name="id">รหัสรอบการสอบแข่งขัน</param>
<returns></returns>
<response code="200">เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.PostPeriodAsync(BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest)">
<summary>
เพิ่มข้อมูลรอบการจัดสอบแข่งขัน
</summary>
<param name="req">Request parameters</param>
<returns></returns>
<response code="200">เมื่อทำการเพิ่มข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.PutPeriodAsync(System.Guid,BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest)">
<summary>
แก้ไขข้อมูลรอบการจัดสอบแข่งขัน
</summary>
<param name="id">รหัสรอบการสอบแข่งขัน</param>
<param name="req">Request parameters</param>
<returns></returns>
<response code="200">เมื่อทำการเพิ่มข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.DeletePeriodAsync(System.Guid)">
<summary>
ลบข้อมูลรอบการจัดสอบแข่งขัน
</summary>
<param name="id">รหัสรอบการสอบแข่งขัน</param>
<returns></returns>
<response code="200">เมื่อทำการลบข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.GetCandidateFilesAsync">
<summary>
แสดงข้อมูลสำหรับหน้าจอ รายการนำเข้าข้อมูลผู้สมัครสอบแข่งขัน
</summary>
<returns></returns>
<response code="200">เมื่อแสดงรายการข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.ImportCandidateFileAsync(BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest)">
<summary>
นำเข้ารายชื่อผู้สมัครสอบแข่งขัน
</summary>
<returns></returns>
<response code="200">เมื่อทำนำเข้าข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.DeleteCandidateFileAsync(System.Guid)">
<summary>
ลบข้อมูลนำข้อมูลผู้สมัครสอบแข่งขัน
</summary>
<param name="id">รหัสรอบการสอบแข่งขัน</param>
<returns></returns>
<response code="200">เมื่อทำนำเข้าข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.GetImportHistoryAsync(System.Guid)">
<summary>
แสดงประวัติการนำเข้าข้อมูลการสอบแข่งขัน
</summary>
<param name="id">รหัสรอบการสอบแข่งขัน</param>
<returns></returns>
<response code="200">เมื่อทำนำเข้าข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.ImportCandidateFileByIdAsync(System.Guid)">
<summary>
นำเข้ารายชื่อผู้สมัครสอบแข่งขัน
</summary>
<param name="id">รหัสรอบการสอบแข่งขัน</param>
<returns></returns>
<response code="200">เมื่อทำนำเข้าข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.GetExamResultAsync">
<summary>
แสดงข้อมูลสำหรับหน้าจอ : รายการข้อมูลผู้สมัครสอบ
</summary>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.UpdateDocAsync(System.String,System.Guid)">
<summary>
Upload Image หรือ เอกสารในรอบการสอบ
</summary>
<param name="type">ประเภทเอกสาร</param>
<param name="importId">รหัสรอบสมัคร</param>
<returns></returns>
<response code="200">เมื่อทำการอ่านข้อมูลรอบการสมัครสอบ และ คนสมัครสอบในรอบสำเร็จ</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.DeleteDocAsync(System.String,System.Guid)">
<summary>
ลบ Image หรือ เอกสารในรอบการสอบ
</summary>
<param name="type">ประเภทเอกสาร</param>
<param name="docId">รหัสไฟล์</param>
<returns></returns>
<response code="200">เมื่อทำรายการสำเร็จ</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.UpdateAsyncRecruitToPlacement(System.Guid)">
<summary>
โอนคนแข่งขันไปบรรจุ
</summary>
<param name="examId">รหัสรอบสมัคร</param>
<returns></returns>
<response code="200">เมื่อโอนคนแข่งขันไปบรรจุสำเร็จ</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.report1(System.String)">
<summary>
รายงานจำนวนผู้เข้าสอบแข่งขันเพื่อบรรจุเข้ารับราชการเป็นข้าราชการ กทม. สามัญ
</summary>
<param name="year">ปีงบประมาณ</param>
<returns></returns>
<response code="200">เมื่อทำการอ่านข้อมูลจำนวนผู้เข้าสอบแข่งขันเพื่อบรรจุเข้ารับราชการเป็นข้าราชการ กทม. สามัญสำเร็จ</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.report2(System.String)">
<summary>
รายงานจำนวนผู้สอบผ่านแข่งขันเพื่อบรรจุเข้ารับราชการเป็นข้าราชการ กทม. สามัญ
</summary>
<param name="year">ปีงบประมาณ</param>
<returns></returns>
<response code="200">เมื่อทำการอ่านข้อมูลจำนวนผู้สอบผ่านแข่งขันเพื่อบรรจุเข้ารับราชการเป็นข้าราชการ กทม. สามัญสำเร็จ</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Extensions.StringExtension.IsEmail(System.String)">
<summary>
Determines whether this instance is email.
</summary>
<param name="input">The input.</param>
<returns></returns>
</member>
<member name="M:BMA.EHR.Recruit.Service.Extensions.StringExtension.IsNumeric(System.String)">
<summary>
Determines whether this instance is numeric.
</summary>
<param name="input">The input.</param>
<returns></returns>
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.InitialProject">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.InitialProject.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.InitialProject.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.InitialProject.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.Updaterecruitimporttable">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.Updaterecruitimporttable.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.Updaterecruitimporttable.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.Updaterecruitimporttable.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.ChangeDocumentTableDef">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeDocumentTableDef.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeDocumentTableDef.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeDocumentTableDef.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitScoreRelationship">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitScoreRelationship.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitScoreRelationship.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitScoreRelationship.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitmissingfield">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitmissingfield.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitmissingfield.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitmissingfield.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitRelation">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitRelation.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitRelation.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitRelation.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.UpdateViewInfo">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateViewInfo.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateViewInfo.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateViewInfo.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddImportHistory">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportHistory.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportHistory.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportHistory.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddFieldtoRecruitImportTableforSupportCMS">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldtoRecruitImportTableforSupportCMS.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldtoRecruitImportTableforSupportCMS.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldtoRecruitImportTableforSupportCMS.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddFieldPositionName">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldPositionName.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldPositionName.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldPositionName.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddFieldExamPartResult">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldExamPartResult.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldExamPartResult.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldExamPartResult.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate2">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate2.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate2.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate2.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddFieldNumbertoScore">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldNumbertoScore.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldNumbertoScore.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldNumbertoScore.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.ChangeNumberField">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeNumberField.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeNumberField.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeNumberField.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.ChangeimportdetailField">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeimportdetailField.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeimportdetailField.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeimportdetailField.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable2">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable2.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable2.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable2.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.updatetableDisableaddpostype">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.updatetableDisableaddpostype.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.updatetableDisableaddpostype.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.updatetableDisableaddpostype.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.ChangeSumScoretodouble">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeSumScoretodouble.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeSumScoretodouble.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeSumScoretodouble.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest">
<summary>
ตัวแปรสำหรับสร้างข้อมูลการสอบแข่งขัน
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.Year">
<summary>
ปีงบประมาณที่จัดสอบ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.Name">
<summary>
รอบการสอบ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.Order">
<summary>
ครั้งที่
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.Detail">
<summary>
รายละเอียด
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.Fee">
<summary>
ค่าธรรมเนียม
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.AnnouncementStartDate">
<summary>
วันเริ่มประกาศ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.AnnouncementEndDate">
<summary>
วันสิ้นสุดประกาศ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.PaymentStartDate">
<summary>
วันเริ่มชำระเงิน
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.PaymentEndDate">
<summary>
วันสิ้นสุดชำระเงิน
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.RegisterStartDate">
<summary>
วันเริ่มสมัครสอบ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.RegisterEndDate">
<summary>
วันสิ้นสุดสมัครสอบ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.ExamDate">
<summary>
วันที่สอบ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.Note">
<summary>
หมายเหตุ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.AnnouncementDate">
<summary>
วันที่ประกาศผลสอบ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.RecruitExamRequest.ExamAttribute">
<summary>
ข้อมูลคุณสมบัติของผู้เข้าสอบ โดยส่งมาจากหน้าจอ 'มีคุณสมบัติ' 'ขาดคุณสมบัติ'
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.RecruitExamRequest.ExamResult">
<summary>
ข้อมูลผลการสอบ 'ผ่าน' 'ไม่ผ่าน'
</summary>
</member>
</members>
</doc>
=======
<?xml version="1.0"?>
<doc>
<assembly>
@ -1100,4 +554,3 @@
</member>
</members>
</doc>
>>>>>>> develop

View file

@ -7,32 +7,5 @@
"System": "Warning"
}
}
},
"ElasticConfiguration": {
"Uri": "http://localhost:9200"
},
"AllowedHosts": "*",
"ConnectionStrings": {
"MongoConnection": "mongodb://admin:adminVM123@127.0.0.1:27017",
"DefaultConnection": "server=192.168.1.80;user=root;password=adminVM123;port=3306;database=bma_ehr_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;",
"OrgConnection": "server=192.168.1.80;user=root;password=adminVM123;port=3306;database=bma_ehr_organization_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;",
"RecruitConnection": "server=192.168.1.80;user=root;password=adminVM123;database=bma_recruit_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;"
},
"Jwt": {
"Key": "HP-FnQMUj9msHMSD3T9HtdEnphAKoCJLEl85CIqROFI",
"Issuer": "https://id.frappet.synology.me/realms/bma-ehr"
},
"EPPlus": {
"ExcelPackage": {
"LicenseContext": "NonCommercial"
}
},
"MinIO": {
"Endpoint": "https://edm-s3.frappet.synology.me/",
"AccessKey": "XxtdnJajPjp3hHuKdOMn",
"SecretKey": "rVPzB05giC7bA400cUuIThzT4T9SGCcpcmL3tBBg",
"BucketName": "bma-ehr-fpt"
},
"API": "https://bma-ehr.frappet.synology.me/api/v1",
"API_KEY": "fKRL16yyEgbyTEJdsMw2h64tGSCmkW685PRtM3CygzX1JOSdptT9UJtpgWwKM8FybRTJups3GTFwj27ZRvlPdIkv3XgCoVJaD5LmR06ozuEPvCCRSdp2WFthg08V5xHc56fTPfZLpr1VmXrhd6dvYhHIqKkQUJR02Rlkss11cLRWEQOssEFVA4xdu2J5DIRO1EM5m7wRRvEwcDB4mYRXD9HH52SMq6iYqUWEWsMwLdbk7QW9yYESUEuzMW5gWrb6vIeWZxJV5bTz1PcWUyR7eO9Fyw1F5DiQYc9JgzTC1mW7cv31fEtTtrfbJYKIb5EbWilqIEUKC6A0UKBDDek35ML0006cqRVm0pvdOH6jeq7VQyYrhdXe59dBEyhYGUIfozoVBvW7Up4QBuOMjyPjSqJPlMBKwaseptfrblxQV1AOOivSBpf1ZcQyOZ8JktRtKUDSuXsmG0lsXwFlI3JCeSHdpVdgZWFYcJPegqfrB6KotR02t9AVkpLs1ZWrixwz"
}

View file

@ -9,18 +9,20 @@
}
},
"ElasticConfiguration": {
"Uri": "http://localhost:9200"
"Uri": "http://192.168.1.40:9200",
"IndexFormat": "bma-ehr-log-index",
"SystemName": "recruiting"
},
"AllowedHosts": "*",
"ConnectionStrings": {
"MongoConnection": "mongodb://admin:adminVM123@127.0.0.1:27017",
"DefaultConnection": "server=192.168.1.80;user=root;password=adminVM123;port=3306;database=bma_ehr_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;",
"OrgConnection": "server=192.168.1.80;user=root;password=adminVM123;port=3306;database=bma_ehr_organization_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;",
"RecruitConnection": "server=192.168.1.80;user=root;password=adminVM123;database=bma_recruit_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;"
"DefaultConnection": "server=192.168.1.80;user=root;password=adminVM123;port=3306;database=hrms;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;",
"OrgConnection": "server=192.168.1.80;user=root;password=adminVM123;port=3306;database=hrms_organization;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;",
"RecruitConnection": "server=192.168.1.80;user=root;password=adminVM123;database=hrms_recruit;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;"
},
"Jwt": {
"Key": "HP-FnQMUj9msHMSD3T9HtdEnphAKoCJLEl85CIqROFI",
"Issuer": "https://id.frappet.synology.me/realms/bma-ehr"
"Issuer": "https://id.frappet.synology.me/realms/hrms"
},
"EPPlus": {
"ExcelPackage": {

View file

@ -44,8 +44,9 @@
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "all"
}
"auditMode": "direct"
},
"SdkAnalysisLevel": "9.0.200"
},
"frameworks": {
"net7.0": {
@ -109,6 +110,10 @@
"target": "Package",
"version": "[2.19.0, )"
},
"NEST": {
"target": "Package",
"version": "[7.17.5, )"
},
"Newtonsoft.Json": {
"target": "Package",
"version": "[13.0.3, )"
@ -180,19 +185,19 @@
"downloadDependencies": [
{
"name": "Microsoft.AspNetCore.App.Ref",
"version": "[7.0.19, 7.0.19]"
"version": "[7.0.20, 7.0.20]"
},
{
"name": "Microsoft.NETCore.App.Host.win-x64",
"version": "[7.0.19, 7.0.19]"
"version": "[7.0.20, 7.0.20]"
},
{
"name": "Microsoft.NETCore.App.Ref",
"version": "[7.0.19, 7.0.19]"
"version": "[7.0.20, 7.0.20]"
},
{
"name": "Microsoft.WindowsDesktop.App.Ref",
"version": "[7.0.19, 7.0.19]"
"version": "[7.0.20, 7.0.20]"
}
],
"frameworkReferences": {
@ -203,7 +208,7 @@
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.100-preview.6.24328.19\\RuntimeIdentifierGraph.json"
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.200\\RuntimeIdentifierGraph.json"
}
}
}

View file

@ -7,7 +7,7 @@
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\jack\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.11.0</NuGetToolVersion>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.14.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\jack\.nuget\packages\" />

View file

@ -15,7 +15,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("BMA.EHR.Recruit.Service")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+9cf6a38b3eec88ec83f6dd50a0177fbc46402c49")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+c91666726ac97c9629e0d0801bd2b2319914f549")]
[assembly: System.Reflection.AssemblyProductAttribute("BMA.EHR.Recruit.Service")]
[assembly: System.Reflection.AssemblyTitleAttribute("BMA.EHR.Recruit.Service")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View file

@ -1 +1 @@
d7b6fe7d0e4b6b4929eed5632bd0821a80505aa63394f077f16e59d2316ff469
1802642af904ba7933f06442fbcd77b00f34bd3c50c36fa87c58de029fcc92ba

View file

@ -1,6 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.

View file

@ -1,5 +1 @@
<<<<<<< HEAD
2afae04b6f3a7d44fcb90638ba50ba827580abc648c813a2624743f2ef385810
=======
118adb39fa17e550a6ea3f0884bcc470c472eff8c41b45c6866e270cec7ab054
>>>>>>> develop
b3124fd4c4016491f5d30ffb74ef9ab034b453eddb7643416b841a217eb48e03

View file

@ -1,549 +1,3 @@
<<<<<<< HEAD
<?xml version="1.0"?>
<doc>
<assembly>
<name>BMA.EHR.Recruit.Service</name>
</assembly>
<members>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.UploadFile">
<summary>
ตัวอย่างในการเขียน api เพื่อทำการ upload file
</summary>
<returns></returns>
<response code="200">เมื่อทำการ upload สำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.DeleteFile(System.Guid)">
<summary>
ตัวอย่างในการเขียน api เพื่อทำการ delete file
</summary>
<param name="id">รหัสไฟล์ในฐานข้อมูล</param>
<returns></returns>
<response code="200">เมื่อทำการ delete file สำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.DownloadFile(System.Guid)">
<summary>
ตัวอย่างในการเขียน api เพื่อทำการ download file
</summary>
<param name="id">รหัสไฟล์ในฐานข้อมูล</param>
<returns></returns>
<response code="200">เมื่อทำการ download file สำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.GetPeriodsAsync">
<summary>
แสดงข้อมูลรอบการสอบแข่งขัน
</summary>
<returns></returns>
<response code="200">เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.GetPeriodByIdAsync(System.Guid)">
<summary>
แสดงข้อมูลรอบการสอบแข่งขันเป็นรายการ
</summary>
<param name="id">รหัสรอบการสอบแข่งขัน</param>
<returns></returns>
<response code="200">เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.PostPeriodAsync(BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest)">
<summary>
เพิ่มข้อมูลรอบการจัดสอบแข่งขัน
</summary>
<param name="req">Request parameters</param>
<returns></returns>
<response code="200">เมื่อทำการเพิ่มข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.PutPeriodAsync(System.Guid,BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest)">
<summary>
แก้ไขข้อมูลรอบการจัดสอบแข่งขัน
</summary>
<param name="id">รหัสรอบการสอบแข่งขัน</param>
<param name="req">Request parameters</param>
<returns></returns>
<response code="200">เมื่อทำการเพิ่มข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.DeletePeriodAsync(System.Guid)">
<summary>
ลบข้อมูลรอบการจัดสอบแข่งขัน
</summary>
<param name="id">รหัสรอบการสอบแข่งขัน</param>
<returns></returns>
<response code="200">เมื่อทำการลบข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.GetCandidateFilesAsync">
<summary>
แสดงข้อมูลสำหรับหน้าจอ รายการนำเข้าข้อมูลผู้สมัครสอบแข่งขัน
</summary>
<returns></returns>
<response code="200">เมื่อแสดงรายการข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.ImportCandidateFileAsync(BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest)">
<summary>
นำเข้ารายชื่อผู้สมัครสอบแข่งขัน
</summary>
<returns></returns>
<response code="200">เมื่อทำนำเข้าข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.DeleteCandidateFileAsync(System.Guid)">
<summary>
ลบข้อมูลนำข้อมูลผู้สมัครสอบแข่งขัน
</summary>
<param name="id">รหัสรอบการสอบแข่งขัน</param>
<returns></returns>
<response code="200">เมื่อทำนำเข้าข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.GetImportHistoryAsync(System.Guid)">
<summary>
แสดงประวัติการนำเข้าข้อมูลการสอบแข่งขัน
</summary>
<param name="id">รหัสรอบการสอบแข่งขัน</param>
<returns></returns>
<response code="200">เมื่อทำนำเข้าข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.ImportCandidateFileByIdAsync(System.Guid)">
<summary>
นำเข้ารายชื่อผู้สมัครสอบแข่งขัน
</summary>
<param name="id">รหัสรอบการสอบแข่งขัน</param>
<returns></returns>
<response code="200">เมื่อทำนำเข้าข้อมูลสำเร็จ</response>
<response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.GetExamResultAsync">
<summary>
แสดงข้อมูลสำหรับหน้าจอ : รายการข้อมูลผู้สมัครสอบ
</summary>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.UpdateDocAsync(System.String,System.Guid)">
<summary>
Upload Image หรือ เอกสารในรอบการสอบ
</summary>
<param name="type">ประเภทเอกสาร</param>
<param name="importId">รหัสรอบสมัคร</param>
<returns></returns>
<response code="200">เมื่อทำการอ่านข้อมูลรอบการสมัครสอบ และ คนสมัครสอบในรอบสำเร็จ</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.DeleteDocAsync(System.String,System.Guid)">
<summary>
ลบ Image หรือ เอกสารในรอบการสอบ
</summary>
<param name="type">ประเภทเอกสาร</param>
<param name="docId">รหัสไฟล์</param>
<returns></returns>
<response code="200">เมื่อทำรายการสำเร็จ</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.UpdateAsyncRecruitToPlacement(System.Guid)">
<summary>
โอนคนแข่งขันไปบรรจุ
</summary>
<param name="examId">รหัสรอบสมัคร</param>
<returns></returns>
<response code="200">เมื่อโอนคนแข่งขันไปบรรจุสำเร็จ</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.report1(System.String)">
<summary>
รายงานจำนวนผู้เข้าสอบแข่งขันเพื่อบรรจุเข้ารับราชการเป็นข้าราชการ กทม. สามัญ
</summary>
<param name="year">ปีงบประมาณ</param>
<returns></returns>
<response code="200">เมื่อทำการอ่านข้อมูลจำนวนผู้เข้าสอบแข่งขันเพื่อบรรจุเข้ารับราชการเป็นข้าราชการ กทม. สามัญสำเร็จ</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Controllers.RecruitController.report2(System.String)">
<summary>
รายงานจำนวนผู้สอบผ่านแข่งขันเพื่อบรรจุเข้ารับราชการเป็นข้าราชการ กทม. สามัญ
</summary>
<param name="year">ปีงบประมาณ</param>
<returns></returns>
<response code="200">เมื่อทำการอ่านข้อมูลจำนวนผู้สอบผ่านแข่งขันเพื่อบรรจุเข้ารับราชการเป็นข้าราชการ กทม. สามัญสำเร็จ</response>
<response code="401">ไม่ได้ Login เข้าระบบ</response>
<response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
</member>
<member name="M:BMA.EHR.Recruit.Service.Extensions.StringExtension.IsEmail(System.String)">
<summary>
Determines whether this instance is email.
</summary>
<param name="input">The input.</param>
<returns></returns>
</member>
<member name="M:BMA.EHR.Recruit.Service.Extensions.StringExtension.IsNumeric(System.String)">
<summary>
Determines whether this instance is numeric.
</summary>
<param name="input">The input.</param>
<returns></returns>
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.InitialProject">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.InitialProject.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.InitialProject.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.InitialProject.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.Updaterecruitimporttable">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.Updaterecruitimporttable.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.Updaterecruitimporttable.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.Updaterecruitimporttable.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.ChangeDocumentTableDef">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeDocumentTableDef.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeDocumentTableDef.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeDocumentTableDef.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitScoreRelationship">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitScoreRelationship.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitScoreRelationship.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitScoreRelationship.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitmissingfield">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitmissingfield.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitmissingfield.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitmissingfield.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitRelation">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitRelation.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitRelation.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateRecruitRelation.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.UpdateViewInfo">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateViewInfo.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateViewInfo.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.UpdateViewInfo.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddImportHistory">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportHistory.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportHistory.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportHistory.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddFieldtoRecruitImportTableforSupportCMS">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldtoRecruitImportTableforSupportCMS.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldtoRecruitImportTableforSupportCMS.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldtoRecruitImportTableforSupportCMS.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddFieldPositionName">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldPositionName.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldPositionName.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldPositionName.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddFieldExamPartResult">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldExamPartResult.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldExamPartResult.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldExamPartResult.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate2">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate2.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate2.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate2.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddFieldNumbertoScore">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldNumbertoScore.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldNumbertoScore.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldNumbertoScore.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.ChangeNumberField">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeNumberField.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeNumberField.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeNumberField.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.ChangeimportdetailField">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeimportdetailField.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeimportdetailField.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeimportdetailField.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable2">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable2.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable2.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddImportImageandDocumentTable2.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.updatetableDisableaddpostype">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.updatetableDisableaddpostype.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.updatetableDisableaddpostype.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.updatetableDisableaddpostype.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Migrations.ChangeSumScoretodouble">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeSumScoretodouble.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeSumScoretodouble.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:BMA.EHR.Recruit.Service.Migrations.ChangeSumScoretodouble.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest">
<summary>
ตัวแปรสำหรับสร้างข้อมูลการสอบแข่งขัน
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.Year">
<summary>
ปีงบประมาณที่จัดสอบ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.Name">
<summary>
รอบการสอบ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.Order">
<summary>
ครั้งที่
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.Detail">
<summary>
รายละเอียด
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.Fee">
<summary>
ค่าธรรมเนียม
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.AnnouncementStartDate">
<summary>
วันเริ่มประกาศ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.AnnouncementEndDate">
<summary>
วันสิ้นสุดประกาศ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.PaymentStartDate">
<summary>
วันเริ่มชำระเงิน
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.PaymentEndDate">
<summary>
วันสิ้นสุดชำระเงิน
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.RegisterStartDate">
<summary>
วันเริ่มสมัครสอบ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.RegisterEndDate">
<summary>
วันสิ้นสุดสมัครสอบ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.ExamDate">
<summary>
วันที่สอบ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.Note">
<summary>
หมายเหตุ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest.AnnouncementDate">
<summary>
วันที่ประกาศผลสอบ
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.RecruitExamRequest.ExamAttribute">
<summary>
ข้อมูลคุณสมบัติของผู้เข้าสอบ โดยส่งมาจากหน้าจอ 'มีคุณสมบัติ' 'ขาดคุณสมบัติ'
</summary>
</member>
<member name="P:BMA.EHR.Recruit.Service.Requests.Recruits.RecruitExamRequest.ExamResult">
<summary>
ข้อมูลผลการสอบ 'ผ่าน' 'ไม่ผ่าน'
</summary>
</member>
</members>
</doc>
=======
<?xml version="1.0"?>
<doc>
<assembly>
@ -1100,4 +554,3 @@
</member>
</members>
</doc>
>>>>>>> develop

View file

@ -2564,6 +2564,22 @@
}
}
},
"NEST/7.17.5": {
"type": "package",
"dependencies": {
"Elasticsearch.Net": "7.17.5"
},
"compile": {
"lib/netstandard2.0/Nest.dll": {
"related": ".pdb;.xml"
}
},
"runtime": {
"lib/netstandard2.0/Nest.dll": {
"related": ".pdb;.xml"
}
}
},
"NETStandard.Library/1.6.1": {
"type": "package",
"dependencies": {
@ -8254,6 +8270,25 @@
"mysqlconnector.nuspec"
]
},
"NEST/7.17.5": {
"sha512": "bo9UyuIoVRx4IUQiuC8ZrlZuvAXKIccernC7UUKukQCEmRq2eVIk+gubHlnMQljrP51q0mN4cjgy9vv5uZPkoA==",
"type": "package",
"path": "nest/7.17.5",
"files": [
".nupkg.metadata",
".signature.p7s",
"lib/net461/Nest.dll",
"lib/net461/Nest.pdb",
"lib/net461/Nest.xml",
"lib/netstandard2.0/Nest.dll",
"lib/netstandard2.0/Nest.pdb",
"lib/netstandard2.0/Nest.xml",
"license.txt",
"nest.7.17.5.nupkg.sha512",
"nest.nuspec",
"nuget-icon.png"
]
},
"NETStandard.Library/1.6.1": {
"sha512": "WcSp3+vP+yHNgS8EV5J7pZ9IRpeDuARBPN28by8zqff1wJQXm26PVU8L3/fYLBJVU7BtDyqNVWq2KlCVvSSR4A==",
"type": "package",
@ -13675,6 +13710,7 @@
"Microsoft.VisualStudio.Azure.Containers.Tools.Targets >= 1.17.0",
"MongoDB.Driver >= 2.19.0",
"MongoDB.Driver.GridFS >= 2.19.0",
"NEST >= 7.17.5",
"Newtonsoft.Json >= 13.0.3",
"Pomelo.EntityFrameworkCore.MySql >= 7.0.0",
"Pomelo.EntityFrameworkCore.MySql.Design >= 1.1.2",
@ -13735,8 +13771,9 @@
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "all"
}
"auditMode": "direct"
},
"SdkAnalysisLevel": "9.0.200"
},
"frameworks": {
"net7.0": {
@ -13800,6 +13837,10 @@
"target": "Package",
"version": "[2.19.0, )"
},
"NEST": {
"target": "Package",
"version": "[7.17.5, )"
},
"Newtonsoft.Json": {
"target": "Package",
"version": "[13.0.3, )"
@ -13871,19 +13912,19 @@
"downloadDependencies": [
{
"name": "Microsoft.AspNetCore.App.Ref",
"version": "[7.0.19, 7.0.19]"
"version": "[7.0.20, 7.0.20]"
},
{
"name": "Microsoft.NETCore.App.Host.win-x64",
"version": "[7.0.19, 7.0.19]"
"version": "[7.0.20, 7.0.20]"
},
{
"name": "Microsoft.NETCore.App.Ref",
"version": "[7.0.19, 7.0.19]"
"version": "[7.0.20, 7.0.20]"
},
{
"name": "Microsoft.WindowsDesktop.App.Ref",
"version": "[7.0.19, 7.0.19]"
"version": "[7.0.20, 7.0.20]"
}
],
"frameworkReferences": {
@ -13894,180 +13935,8 @@
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.100-preview.6.24328.19\\RuntimeIdentifierGraph.json"
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.200\\RuntimeIdentifierGraph.json"
}
}
},
"logs": [
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Azure.Identity' 1.6.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-5mfx-4wcx-rv27",
"libraryId": "Azure.Identity",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1902",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Azure.Identity' 1.6.0 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-m5vv-6r4h-3vj9",
"libraryId": "Azure.Identity",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1902",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Azure.Identity' 1.6.0 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-wvxc-855f-jvrv",
"libraryId": "Azure.Identity",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1904",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'LiteDB' 5.0.11 has a known critical severity vulnerability, https://github.com/advisories/GHSA-3x49-g6rc-c284",
"libraryId": "LiteDB",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Microsoft.AspNetCore.WebSockets' 2.2.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-6px8-22w5-w334",
"libraryId": "Microsoft.AspNetCore.WebSockets",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Microsoft.Data.SqlClient' 5.0.1 has a known high severity vulnerability, https://github.com/advisories/GHSA-98g6-xh36-x2p7",
"libraryId": "Microsoft.Data.SqlClient",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1902",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Microsoft.IdentityModel.JsonWebTokens' 6.21.0 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-59j7-ghrg-fj52",
"libraryId": "Microsoft.IdentityModel.JsonWebTokens",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Npgsql' 6.0.4 has a known high severity vulnerability, https://github.com/advisories/GHSA-x9vc-6hfv-hg8c",
"libraryId": "Npgsql",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Data.SqlClient' 4.8.5 has a known high severity vulnerability, https://github.com/advisories/GHSA-98g6-xh36-x2p7",
"libraryId": "System.Data.SqlClient",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Formats.Asn1' 7.0.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-447r-wph3-92pm",
"libraryId": "System.Formats.Asn1",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1902",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.IdentityModel.Tokens.Jwt' 6.21.0 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-59j7-ghrg-fj52",
"libraryId": "System.IdentityModel.Tokens.Jwt",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Net.Http' 4.3.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-7jgj-8wvc-jh57",
"libraryId": "System.Net.Http",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Net.WebSockets.WebSocketProtocol' 4.5.1 has a known high severity vulnerability, https://github.com/advisories/GHSA-6px8-22w5-w334",
"libraryId": "System.Net.WebSockets.WebSocketProtocol",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Security.Cryptography.Pkcs' 7.0.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-555c-2p6r-68mm",
"libraryId": "System.Security.Cryptography.Pkcs",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1902",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Security.Cryptography.Xml' 4.5.0 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-vh55-786g-wjwj",
"libraryId": "System.Security.Cryptography.Xml",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Text.Json' 7.0.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-hh2w-p6rv-4g7w",
"libraryId": "System.Text.Json",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Text.RegularExpressions' 4.3.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-cmhx-cq75-c4mj",
"libraryId": "System.Text.RegularExpressions",
"targetGraphs": [
"net7.0"
]
}
]
}

View file

@ -1,6 +1,6 @@
{
"version": 2,
"dgSpecHash": "ZDtlsnrYOrU=",
"dgSpecHash": "2b/aE3ltIAI=",
"success": true,
"projectFilePath": "D:\\Develop\\SourceCode\\hrms-api-recruit\\BMA.EHR.Recruit.Service.csproj",
"expectedPackageFiles": [
@ -149,6 +149,7 @@
"C:\\Users\\jack\\.nuget\\packages\\mono.texttemplating\\2.2.1\\mono.texttemplating.2.2.1.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\mysql.data\\8.0.29\\mysql.data.8.0.29.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\mysqlconnector\\2.2.5\\mysqlconnector.2.2.5.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\nest\\7.17.5\\nest.7.17.5.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\netstandard.library\\1.6.1\\netstandard.library.1.6.1.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\newtonsoft.json\\13.0.3\\newtonsoft.json.13.0.3.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\newtonsoft.json.bson\\1.0.2\\newtonsoft.json.bson.1.0.2.nupkg.sha512",
@ -292,181 +293,10 @@
"C:\\Users\\jack\\.nuget\\packages\\system.xml.xpath.xdocument\\4.3.0\\system.xml.xpath.xdocument.4.3.0.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\watchdog.net\\1.4.6\\watchdog.net.1.4.6.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\zstdsharp.port\\0.6.2\\zstdsharp.port.0.6.2.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\microsoft.windowsdesktop.app.ref\\7.0.19\\microsoft.windowsdesktop.app.ref.7.0.19.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\microsoft.netcore.app.ref\\7.0.19\\microsoft.netcore.app.ref.7.0.19.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\microsoft.aspnetcore.app.ref\\7.0.19\\microsoft.aspnetcore.app.ref.7.0.19.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\microsoft.netcore.app.host.win-x64\\7.0.19\\microsoft.netcore.app.host.win-x64.7.0.19.nupkg.sha512"
"C:\\Users\\jack\\.nuget\\packages\\microsoft.windowsdesktop.app.ref\\7.0.20\\microsoft.windowsdesktop.app.ref.7.0.20.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\microsoft.netcore.app.ref\\7.0.20\\microsoft.netcore.app.ref.7.0.20.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\microsoft.aspnetcore.app.ref\\7.0.20\\microsoft.aspnetcore.app.ref.7.0.20.nupkg.sha512",
"C:\\Users\\jack\\.nuget\\packages\\microsoft.netcore.app.host.win-x64\\7.0.20\\microsoft.netcore.app.host.win-x64.7.0.20.nupkg.sha512"
],
"logs": [
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Azure.Identity' 1.6.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-5mfx-4wcx-rv27",
"libraryId": "Azure.Identity",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1902",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Azure.Identity' 1.6.0 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-m5vv-6r4h-3vj9",
"libraryId": "Azure.Identity",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1902",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Azure.Identity' 1.6.0 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-wvxc-855f-jvrv",
"libraryId": "Azure.Identity",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1904",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'LiteDB' 5.0.11 has a known critical severity vulnerability, https://github.com/advisories/GHSA-3x49-g6rc-c284",
"libraryId": "LiteDB",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Microsoft.AspNetCore.WebSockets' 2.2.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-6px8-22w5-w334",
"libraryId": "Microsoft.AspNetCore.WebSockets",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Microsoft.Data.SqlClient' 5.0.1 has a known high severity vulnerability, https://github.com/advisories/GHSA-98g6-xh36-x2p7",
"libraryId": "Microsoft.Data.SqlClient",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1902",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Microsoft.IdentityModel.JsonWebTokens' 6.21.0 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-59j7-ghrg-fj52",
"libraryId": "Microsoft.IdentityModel.JsonWebTokens",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'Npgsql' 6.0.4 has a known high severity vulnerability, https://github.com/advisories/GHSA-x9vc-6hfv-hg8c",
"libraryId": "Npgsql",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Data.SqlClient' 4.8.5 has a known high severity vulnerability, https://github.com/advisories/GHSA-98g6-xh36-x2p7",
"libraryId": "System.Data.SqlClient",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Formats.Asn1' 7.0.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-447r-wph3-92pm",
"libraryId": "System.Formats.Asn1",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1902",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.IdentityModel.Tokens.Jwt' 6.21.0 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-59j7-ghrg-fj52",
"libraryId": "System.IdentityModel.Tokens.Jwt",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Net.Http' 4.3.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-7jgj-8wvc-jh57",
"libraryId": "System.Net.Http",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Net.WebSockets.WebSocketProtocol' 4.5.1 has a known high severity vulnerability, https://github.com/advisories/GHSA-6px8-22w5-w334",
"libraryId": "System.Net.WebSockets.WebSocketProtocol",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Security.Cryptography.Pkcs' 7.0.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-555c-2p6r-68mm",
"libraryId": "System.Security.Cryptography.Pkcs",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1902",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Security.Cryptography.Xml' 4.5.0 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-vh55-786g-wjwj",
"libraryId": "System.Security.Cryptography.Xml",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Text.Json' 7.0.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-hh2w-p6rv-4g7w",
"libraryId": "System.Text.Json",
"targetGraphs": [
"net7.0"
]
},
{
"code": "NU1903",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'System.Text.RegularExpressions' 4.3.0 has a known high severity vulnerability, https://github.com/advisories/GHSA-cmhx-cq75-c4mj",
"libraryId": "System.Text.RegularExpressions",
"targetGraphs": [
"net7.0"
]
}
]
"logs": []
}