fix defect 25-04-2023

This commit is contained in:
Suphonchai Phoonsawat 2023-04-25 21:00:31 +07:00
parent de70220236
commit 2bd62de015
26 changed files with 3131 additions and 155 deletions

View file

@ -65,6 +65,9 @@
<None Update="Templates\PassAExamList.xlsx"> <None Update="Templates\PassAExamList.xlsx">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
<None Update="Templates\PassExamList.xlsx">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup> </ItemGroup>
</Project> </Project>

View file

@ -1189,6 +1189,7 @@ namespace BMA.EHR.Recruit.Service.Controllers
r.CStatus = workSheet?.Cells[row, 22]?.GetValue<string>(); r.CStatus = workSheet?.Cells[row, 22]?.GetValue<string>();
r.ExamStatus = workSheet?.Cells[row, 24]?.GetValue<string>(); r.ExamStatus = workSheet?.Cells[row, 24]?.GetValue<string>();
r.Number = workSheet?.Cells[row, 25]?.GetValue<string>() ?? "";
r.Major = workSheet.Name; r.Major = workSheet.Name;
@ -1325,6 +1326,7 @@ namespace BMA.EHR.Recruit.Service.Controllers
position_name = dr["position_name"].ToString(), position_name = dr["position_name"].ToString(),
exam_name = dr["exam_name"].ToString(), exam_name = dr["exam_name"].ToString(),
exam_order = dr["exam_order"].ToString(), exam_order = dr["exam_order"].ToString(),
score_year = Convert.ToInt32(dr["score_year"]).ToThaiYear().ToString(),
}); });
} }
@ -1382,7 +1384,6 @@ namespace BMA.EHR.Recruit.Service.Controllers
} }
} }
[HttpGet("exam/{id:length(36)}/{examId}")] [HttpGet("exam/{id:length(36)}/{examId}")]
public async Task<ActionResult<ResponseObject>> GetExamResultByPersonAsync(Guid id, string examId) public async Task<ActionResult<ResponseObject>> GetExamResultByPersonAsync(Guid id, string examId)
{ {
@ -1415,7 +1416,14 @@ namespace BMA.EHR.Recruit.Service.Controllers
IsSpecial = p.Isspecial, IsSpecial = p.Isspecial,
Remark = p.Remark, Remark = p.Remark,
University = p.Educations.First().University, University = p.Educations.First().University,
PositionName = p.PositionName,
ExamName = p.RecruitImport.Name,
ExamOrder = p.RecruitImport.Order,
ExamYear = p.RecruitImport.Year.ToThaiYear(),
Score = sr == null ? 0 : sr.SumA + sr.SumB + sr.SumC, Score = sr == null ? 0 : sr.SumA + sr.SumB + sr.SumC,
Number = sr == null ? "" : sr.Number,
ExamCount = _recruitService.GetExamCount(p.CitizenId),
ScoreExpire = p.RecruitImport.AnnouncementDate == null ? "" : p.RecruitImport.AnnouncementDate.Value.AddYears(2).ToThaiShortDate(),
ScoreResult = sr == null ? null : new ScoreResult = sr == null ? null : new
{ {
ScoreAFull = sr.FullA, ScoreAFull = sr.FullA,
@ -1577,7 +1585,7 @@ namespace BMA.EHR.Recruit.Service.Controllers
if (data == null) if (data == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound); return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
if(data_pass == null) if (data_pass == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound); return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var header = $"{data.Name} ครั้งที่ {data.Order}/{data.Year.ToThaiYear()}"; var header = $"{data.Name} ครั้งที่ {data.Order}/{data.Year.ToThaiYear()}";
@ -1605,7 +1613,8 @@ namespace BMA.EHR.Recruit.Service.Controllers
r.LastName, r.LastName,
s.FullA, s.FullA,
s.SumA, s.SumA,
s.AStatus s.AStatus,
}).ToList(); }).ToList();
// copy template // copy template
@ -1627,7 +1636,113 @@ namespace BMA.EHR.Recruit.Service.Controllers
workSheet.Cells[row, 3].Value = $"{item.Prefix}{item.FirstName} {item.LastName}"; workSheet.Cells[row, 3].Value = $"{item.Prefix}{item.FirstName} {item.LastName}";
workSheet.Cells[row, 4].Value = item.FullA; workSheet.Cells[row, 4].Value = item.FullA;
workSheet.Cells[row, 5].Value = item.SumA; workSheet.Cells[row, 5].Value = item.SumA;
workSheet.Cells[row, 6].Value = ""; workSheet.Cells[row, 6].Value = item.AStatus;
row++;
}
excel.Save();
using (FileStream fs = new FileStream(exportFile, FileMode.Open, FileAccess.Read))
{
byte[] bytes = System.IO.File.ReadAllBytes(exportFile);
fs.Read(bytes, 0, System.Convert.ToInt32(fs.Length));
fs.Close();
var fname = Path.GetFileName(exportFile);
Response.Headers["Content-Disposition"] = $"inline; filename={fname}";
var ret = new FileContentResult(bytes, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
{
FileDownloadName = fname
};
return ret;
}
}
}
catch (Exception ex)
{
return Error(ex, "ไม่สามารถส่งออกรายชื่อผู้สอบผ่านได้!!");
}
finally
{
if (System.IO.File.Exists(exportFile))
System.IO.File.Delete(exportFile);
}
}
[HttpGet("export/pass/{id:length(36)}")]
public async Task<ActionResult<ResponseObject>> ExportPassExamResultAsync(Guid id)
{
var data = await _context.RecruitImports.AsQueryable()
.Include(x => x.Recruits)
.FirstOrDefaultAsync(x => x.Id == id);
var data_pass = await _context.RecruitImports.AsQueryable()
.Include(x => x.ScoreImport)
.ThenInclude(x => x.Scores)
.FirstOrDefaultAsync(x => x.Id == id);
if (data == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
if (data_pass == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var header = $"{data.Name} ครั้งที่ {data.Order}/{data.Year.ToThaiYear()}";
var template_dir = Path.Combine(_webHostEnvironment.ContentRootPath, "Templates");
var template_file = Path.Combine(template_dir, "PassExamList.xlsx");
var tmpDir = Path.Combine(_webHostEnvironment.ContentRootPath, "tmp");
if (!Directory.Exists(tmpDir))
Directory.CreateDirectory(tmpDir);
var exportFile = Path.Combine(tmpDir, $"PassExamList_{DateTime.Now.ToString("yyyyMMddHHmmss")}.xlsx");
try
{
var result = (from r in data.Recruits.ToList()
join s in data_pass.ScoreImport.Scores.Where(x => x.ExamStatus == "ผ่าน").ToList() on r.ExamId equals s.ExamId
select new
{
r.ExamId,
r.CitizenId,
r.Prefix,
r.FirstName,
r.LastName,
Full = s.FullA + s.FullB + s.FullC,
Sum = s.SumA + s.SumB + s.SumC,
Status = s.ExamStatus,
r.PositionName,
s.Number
}).ToList();
// copy template
System.IO.File.Copy(template_file, exportFile);
using (var excel = new ExcelPackage(new FileInfo(exportFile)))
{
var workSheet = excel.Workbook.Worksheets[0];
workSheet.Cells[1, 2].Value = header;
var recruits = data.Recruits.OrderBy(x => x.ExamId).ToList();
var row = 4; // start at row 4
foreach (var item in result)
{
workSheet.Cells[row, 1].Value = item.ExamId;
workSheet.Cells[row, 2].Value = item.CitizenId;
workSheet.Cells[row, 3].Value = $"{item.Prefix}{item.FirstName} {item.LastName}";
workSheet.Cells[row, 4].Value = item.Full;
workSheet.Cells[row, 5].Value = item.Sum;
workSheet.Cells[row, 6].Value = item.Status;
workSheet.Cells[row, 7].Value = item.Number;
workSheet.Cells[row, 8].Value = item.PositionName;
row++; row++;
} }

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,32 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace BMA.EHR.Recruit.Service.Migrations
{
/// <inheritdoc />
public partial class AddFieldNumbertoScore : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<string>(
name: "Number",
table: "RecruitScores",
type: "varchar(200)",
maxLength: 200,
nullable: false,
defaultValue: "",
comment: "ลำดับที่สอบได้")
.Annotation("MySql:CharSet", "utf8mb4");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "Number",
table: "RecruitScores");
}
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,22 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace BMA.EHR.Recruit.Service.Migrations
{
/// <inheritdoc />
public partial class ChangeNumberField : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
}
}
}

View file

@ -1087,6 +1087,12 @@ namespace BMA.EHR.Recruit.Service.Migrations
.HasMaxLength(200) .HasMaxLength(200)
.HasColumnType("varchar(200)"); .HasColumnType("varchar(200)");
b.Property<string>("Number")
.IsRequired()
.HasMaxLength(200)
.HasColumnType("varchar(200)")
.HasComment("ลำดับที่สอบได้");
b.Property<double>("PercentageA") b.Property<double>("PercentageA")
.HasColumnType("double"); .HasColumnType("double");

View file

@ -1,4 +1,5 @@
using System.ComponentModel.DataAnnotations; using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;
namespace BMA.EHR.Recruit.Service.Models.Recruits namespace BMA.EHR.Recruit.Service.Models.Recruits
{ {
@ -45,6 +46,9 @@ namespace BMA.EHR.Recruit.Service.Models.Recruits
[MaxLength(200)] [MaxLength(200)]
public string Major { get; set; } public string Major { get; set; }
[MaxLength(200),Comment("ลำดับที่สอบได้")]
public string Number { get; set; } = string.Empty;
public ScoreImport ScoreImport { get; set; } public ScoreImport ScoreImport { get; set; }
} }
} }

View file

@ -74,7 +74,7 @@ BsonSerializer.RegisterSerializer(new DateTimeSerializer(BsonType.String));
// Register DbContext // Register DbContext
var defaultConnection = builder.Configuration.GetConnectionString("DefaultConnection"); var defaultConnection = builder.Configuration.GetConnectionString("DefaultConnection");
builder.Services.AddDbContext<ApplicationDbContext>(options => builder.Services.AddDbContext<ApplicationDbContext>(options =>
options.UseMySql(defaultConnection, ServerVersion.AutoDetect(defaultConnection))); options.UseMySql(defaultConnection, ServerVersion.AutoDetect(defaultConnection)), ServiceLifetime.Transient);
// Add config CORS // Add config CORS
builder.Services.AddCors(options => options.AddDefaultPolicy(builder => builder.Services.AddCors(options => options.AddDefaultPolicy(builder =>

View file

@ -8,42 +8,58 @@ using BMA.EHR.Recruit.Service.Models.Recruits;
namespace BMA.EHR.Recruit.Service.Services namespace BMA.EHR.Recruit.Service.Services
{ {
public class RecruitService public class RecruitService
{ {
private readonly ApplicationDbContext _context; private readonly ApplicationDbContext _context;
public RecruitService(ApplicationDbContext context) public RecruitService(ApplicationDbContext context)
{ {
_context = context; _context = context;
} }
public async Task<string> GetExamAttributeAsync(Guid period, Guid exam) public int GetExamCount(string citizenId)
{ {
try try
{ {
var payment = await _context.RecruitPayments.AsQueryable() var count = _context.Recruits.AsQueryable()
.Include(x => x.Recruit) .Where(x => x.CitizenId == citizenId)
.ThenInclude(x => x.RecruitImport) .Count();
.Where(x => x.Recruit.Id == exam)
.Where(x => x.Recruit.RecruitImport.Id == period)
.FirstOrDefaultAsync();
return payment != null ? "มีคุณสมบัติ" : "ไม่มีคุณสมบัติ"; return count;
} }
catch catch
{ {
throw; throw;
} }
} }
public bool CheckValidCertificate(DateTime certDate, int nextYear = 5) public async Task<string> GetExamAttributeAsync(Guid period, Guid exam)
{ {
var valid = true; try
if (DateTime.Now.Date > certDate.Date.AddYears(nextYear)) {
valid = false; var payment = await _context.RecruitPayments.AsQueryable()
.Include(x => x.Recruit)
.ThenInclude(x => x.RecruitImport)
.Where(x => x.Recruit.Id == exam)
.Where(x => x.Recruit.RecruitImport.Id == period)
.FirstOrDefaultAsync();
return valid; return payment != null ? "มีคุณสมบัติ" : "ไม่มีคุณสมบัติ";
} }
catch
{
throw;
}
}
} public bool CheckValidCertificate(DateTime certDate, int nextYear = 5)
{
var valid = true;
if (DateTime.Now.Date > certDate.Date.AddYears(nextYear))
valid = false;
return valid;
}
}
} }

BIN
Templates/PassExamList.xlsx Normal file

Binary file not shown.

View file

@ -14,7 +14,7 @@
"AllowedHosts": "*", "AllowedHosts": "*",
"ConnectionStrings": { "ConnectionStrings": {
"MongoConnection": "mongodb://127.0.0.1:27017", "MongoConnection": "mongodb://127.0.0.1:27017",
"DefaultConnection": "server=192.168.1.9;user=root;password=adminVM123;port=3306;database=bma_recruit;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;" "DefaultConnection": "server=127.0.0.1;user=root;password=P@ssw0rd;port=3308;database=bma_recruit;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;"
}, },
"Jwt": { "Jwt": {
"Key": "HP-FnQMUj9msHMSD3T9HtdEnphAKoCJLEl85CIqROFI", "Key": "HP-FnQMUj9msHMSD3T9HtdEnphAKoCJLEl85CIqROFI",

View file

@ -305,6 +305,30 @@
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate2.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)"> <member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate2.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc /> <inheritdoc />
</member> </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.Requests.Recruits.PostRecruitImportRequest"> <member name="T:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest">
<summary> <summary>
ตัวแปรสำหรับสร้างข้อมูลการสอบแข่งขัน ตัวแปรสำหรับสร้างข้อมูลการสอบแข่งขัน

View file

@ -14,7 +14,7 @@
"AllowedHosts": "*", "AllowedHosts": "*",
"ConnectionStrings": { "ConnectionStrings": {
"MongoConnection": "mongodb://127.0.0.1:27017", "MongoConnection": "mongodb://127.0.0.1:27017",
"DefaultConnection": "server=192.168.1.9;user=root;password=adminVM123;port=3306;database=bma_recruit;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;" "DefaultConnection": "server=127.0.0.1;user=root;password=P@ssw0rd;port=3308;database=bma_recruit;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;"
}, },
"Jwt": { "Jwt": {
"Key": "HP-FnQMUj9msHMSD3T9HtdEnphAKoCJLEl85CIqROFI", "Key": "HP-FnQMUj9msHMSD3T9HtdEnphAKoCJLEl85CIqROFI",

View file

@ -17,6 +17,7 @@
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
], ],
"configFilePaths": [ "configFilePaths": [
"D:\\Develop\\Source\\BMA-EHR\\BMA-EHR-Recruit-Service\\NuGet.Config",
"C:\\Users\\suphonchai\\AppData\\Roaming\\NuGet\\NuGet.Config", "C:\\Users\\suphonchai\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
@ -25,9 +26,9 @@
"net7.0" "net7.0"
], ],
"sources": { "sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\dotnet\\library-packs": {}, "C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {} "https://api.nuget.org/v3/index.json": {},
"https://nuget.frappet.synology.me/v3/index.json": {}
}, },
"frameworks": { "frameworks": {
"net7.0": { "net7.0": {

View file

@ -1 +1 @@
b52ef2e214d5bf58c54319b97ef5fd93e089c214 631488dd27a193436b4632d89171744e6c0deea1

View file

@ -305,6 +305,30 @@
<member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate2.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)"> <member name="M:BMA.EHR.Recruit.Service.Migrations.AddFieldAnnouncementDate2.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc /> <inheritdoc />
</member> </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.Requests.Recruits.PostRecruitImportRequest"> <member name="T:BMA.EHR.Recruit.Service.Requests.Recruits.PostRecruitImportRequest">
<summary> <summary>
ตัวแปรสำหรับสร้างข้อมูลการสอบแข่งขัน ตัวแปรสำหรับสร้างข้อมูลการสอบแข่งขัน

View file

@ -1,6 +1,6 @@
{ {
"Version": 1, "Version": 1,
"Hash": "0zrvTC6mF/RXbeJJwEHxVjBPixlaFF5e2hnmdYRb0gI=", "Hash": "76iOJYeekxJxm0hV7aRFaAuc1CIGFJZ2ZEHpsYqOoNc=",
"Source": "BMA.EHR.Recruit.Service", "Source": "BMA.EHR.Recruit.Service",
"BasePath": "_content/BMA.EHR.Recruit.Service", "BasePath": "_content/BMA.EHR.Recruit.Service",
"Mode": "Default", "Mode": "Default",
@ -8,74 +8,6 @@
"ReferencedProjectsConfiguration": [], "ReferencedProjectsConfiguration": [],
"DiscoveryPatterns": [], "DiscoveryPatterns": [],
"Assets": [ "Assets": [
{
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.css",
"SourceId": "CoreAdmin",
"SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin",
"RelativePath": "css/bootstrap.css",
"AssetKind": "All",
"AssetMode": "All",
"AssetRole": "Primary",
"RelatedAsset": "",
"AssetTraitName": "",
"AssetTraitValue": "",
"CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.css"
},
{
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.css.map",
"SourceId": "CoreAdmin",
"SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin",
"RelativePath": "css/bootstrap.css.map",
"AssetKind": "All",
"AssetMode": "All",
"AssetRole": "Primary",
"RelatedAsset": "",
"AssetTraitName": "",
"AssetTraitValue": "",
"CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.css.map"
},
{
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.min.css",
"SourceId": "CoreAdmin",
"SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin",
"RelativePath": "css/bootstrap.min.css",
"AssetKind": "All",
"AssetMode": "All",
"AssetRole": "Primary",
"RelatedAsset": "",
"AssetTraitName": "",
"AssetTraitValue": "",
"CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.min.css"
},
{
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.min.css.map",
"SourceId": "CoreAdmin",
"SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin",
"RelativePath": "css/bootstrap.min.css.map",
"AssetKind": "All",
"AssetMode": "All",
"AssetRole": "Primary",
"RelatedAsset": "",
"AssetTraitName": "",
"AssetTraitValue": "",
"CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.min.css.map"
},
{ {
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap-dark.css", "Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap-dark.css",
"SourceId": "CoreAdmin", "SourceId": "CoreAdmin",
@ -247,12 +179,12 @@
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap-reboot.min.css.map" "OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap-reboot.min.css.map"
}, },
{ {
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\easymde\\easymde.css", "Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.css",
"SourceId": "CoreAdmin", "SourceId": "CoreAdmin",
"SourceType": "Package", "SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\", "ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin", "BasePath": "_content/CoreAdmin",
"RelativePath": "css/easymde/easymde.css", "RelativePath": "css/bootstrap.css",
"AssetKind": "All", "AssetKind": "All",
"AssetMode": "All", "AssetMode": "All",
"AssetRole": "Primary", "AssetRole": "Primary",
@ -261,15 +193,15 @@
"AssetTraitValue": "", "AssetTraitValue": "",
"CopyToOutputDirectory": "Never", "CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest", "CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\easymde\\easymde.css" "OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.css"
}, },
{ {
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\easymde\\easymde.min.css", "Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.css.map",
"SourceId": "CoreAdmin", "SourceId": "CoreAdmin",
"SourceType": "Package", "SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\", "ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin", "BasePath": "_content/CoreAdmin",
"RelativePath": "css/easymde/easymde.min.css", "RelativePath": "css/bootstrap.css.map",
"AssetKind": "All", "AssetKind": "All",
"AssetMode": "All", "AssetMode": "All",
"AssetRole": "Primary", "AssetRole": "Primary",
@ -278,7 +210,41 @@
"AssetTraitValue": "", "AssetTraitValue": "",
"CopyToOutputDirectory": "Never", "CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest", "CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\easymde\\easymde.min.css" "OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.css.map"
},
{
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.min.css",
"SourceId": "CoreAdmin",
"SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin",
"RelativePath": "css/bootstrap.min.css",
"AssetKind": "All",
"AssetMode": "All",
"AssetRole": "Primary",
"RelatedAsset": "",
"AssetTraitName": "",
"AssetTraitValue": "",
"CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.min.css"
},
{
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.min.css.map",
"SourceId": "CoreAdmin",
"SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin",
"RelativePath": "css/bootstrap.min.css.map",
"AssetKind": "All",
"AssetMode": "All",
"AssetRole": "Primary",
"RelatedAsset": "",
"AssetTraitName": "",
"AssetTraitValue": "",
"CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\bootstrap.min.css.map"
}, },
{ {
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\easymde\\easymde-dark.css", "Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\easymde\\easymde-dark.css",
@ -314,6 +280,40 @@
"CopyToPublishDirectory": "PreserveNewest", "CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\easymde\\easymde-dark.min.css" "OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\easymde\\easymde-dark.min.css"
}, },
{
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\easymde\\easymde.css",
"SourceId": "CoreAdmin",
"SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin",
"RelativePath": "css/easymde/easymde.css",
"AssetKind": "All",
"AssetMode": "All",
"AssetRole": "Primary",
"RelatedAsset": "",
"AssetTraitName": "",
"AssetTraitValue": "",
"CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\easymde\\easymde.css"
},
{
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\easymde\\easymde.min.css",
"SourceId": "CoreAdmin",
"SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin",
"RelativePath": "css/easymde/easymde.min.css",
"AssetKind": "All",
"AssetMode": "All",
"AssetRole": "Primary",
"RelatedAsset": "",
"AssetTraitName": "",
"AssetTraitValue": "",
"CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\easymde\\easymde.min.css"
},
{ {
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\jquery-ui.min.css", "Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\jquery-ui.min.css",
"SourceId": "CoreAdmin", "SourceId": "CoreAdmin",
@ -348,23 +348,6 @@
"CopyToPublishDirectory": "PreserveNewest", "CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\mvc-grid\\fonts\\grid-glyphs.woff" "OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\mvc-grid\\fonts\\grid-glyphs.woff"
}, },
{
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\mvc-grid\\mvc-grid.css",
"SourceId": "CoreAdmin",
"SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin",
"RelativePath": "css/mvc-grid/mvc-grid.css",
"AssetKind": "All",
"AssetMode": "All",
"AssetRole": "Primary",
"RelatedAsset": "",
"AssetTraitName": "",
"AssetTraitValue": "",
"CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\mvc-grid\\mvc-grid.css"
},
{ {
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\mvc-grid\\mvc-grid-dark.css", "Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\mvc-grid\\mvc-grid-dark.css",
"SourceId": "CoreAdmin", "SourceId": "CoreAdmin",
@ -382,6 +365,23 @@
"CopyToPublishDirectory": "PreserveNewest", "CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\mvc-grid\\mvc-grid-dark.css" "OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\mvc-grid\\mvc-grid-dark.css"
}, },
{
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\mvc-grid\\mvc-grid.css",
"SourceId": "CoreAdmin",
"SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin",
"RelativePath": "css/mvc-grid/mvc-grid.css",
"AssetKind": "All",
"AssetMode": "All",
"AssetRole": "Primary",
"RelatedAsset": "",
"AssetTraitName": "",
"AssetTraitValue": "",
"CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\mvc-grid\\mvc-grid.css"
},
{ {
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\site.css", "Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\css\\site.css",
"SourceId": "CoreAdmin", "SourceId": "CoreAdmin",
@ -484,6 +484,23 @@
"CopyToPublishDirectory": "PreserveNewest", "CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\js\\easymde\\easymde.min.js" "OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\js\\easymde\\easymde.min.js"
}, },
{
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\js\\jquery-ui.min.js",
"SourceId": "CoreAdmin",
"SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin",
"RelativePath": "js/jquery-ui.min.js",
"AssetKind": "All",
"AssetMode": "All",
"AssetRole": "Primary",
"RelatedAsset": "",
"AssetTraitName": "",
"AssetTraitValue": "",
"CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\js\\jquery-ui.min.js"
},
{ {
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\js\\jquery.js", "Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\js\\jquery.js",
"SourceId": "CoreAdmin", "SourceId": "CoreAdmin",
@ -586,23 +603,6 @@
"CopyToPublishDirectory": "PreserveNewest", "CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\js\\jquery.validate.unobtrusive.min.js" "OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\js\\jquery.validate.unobtrusive.min.js"
}, },
{
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\js\\jquery-ui.min.js",
"SourceId": "CoreAdmin",
"SourceType": "Package",
"ContentRoot": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\",
"BasePath": "_content/CoreAdmin",
"RelativePath": "js/jquery-ui.min.js",
"AssetKind": "All",
"AssetMode": "All",
"AssetRole": "Primary",
"RelatedAsset": "",
"AssetTraitName": "",
"AssetTraitValue": "",
"CopyToOutputDirectory": "Never",
"CopyToPublishDirectory": "PreserveNewest",
"OriginalItemSpec": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\js\\jquery-ui.min.js"
},
{ {
"Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\js\\mvc-grid\\mvc-grid.js", "Identity": "C:\\Users\\suphonchai\\.nuget\\packages\\coreadmin\\2.7.0\\staticwebassets\\js\\mvc-grid\\mvc-grid.js",
"SourceId": "CoreAdmin", "SourceId": "CoreAdmin",

View file

@ -13750,6 +13750,7 @@
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
], ],
"configFilePaths": [ "configFilePaths": [
"D:\\Develop\\Source\\BMA-EHR\\BMA-EHR-Recruit-Service\\NuGet.Config",
"C:\\Users\\suphonchai\\AppData\\Roaming\\NuGet\\NuGet.Config", "C:\\Users\\suphonchai\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
@ -13758,9 +13759,9 @@
"net7.0" "net7.0"
], ],
"sources": { "sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\dotnet\\library-packs": {}, "C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {} "https://api.nuget.org/v3/index.json": {},
"https://nuget.frappet.synology.me/v3/index.json": {}
}, },
"frameworks": { "frameworks": {
"net7.0": { "net7.0": {

View file

@ -1,6 +1,6 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "wwL7jfbtyqKoIC2sTXagCGqfHf4n51CJ6qkvce0iceTUavGY+JVtN++eF/274kGMddl63PkaB6O3QxxiNizXig==", "dgSpecHash": "K/wHaGzbAUaPq8B/vVwHOicvFR4fG0bc6nAWP0hxR2oqH3U4E9d7DOJBjFRa1pU6Pn3p3PVyuCTht57bRl63yA==",
"success": true, "success": true,
"projectFilePath": "D:\\Develop\\Source\\BMA-EHR\\BMA-EHR-Recruit-Service\\BMA.EHR.Recruit.Service.csproj", "projectFilePath": "D:\\Develop\\Source\\BMA-EHR\\BMA-EHR-Recruit-Service\\BMA.EHR.Recruit.Service.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [