Add Migration

This commit is contained in:
Suphonchai Phoonsawat 2025-04-09 16:05:07 +07:00
parent 6fd3fff0c8
commit 50f3d22090
14 changed files with 2846 additions and 9 deletions

View file

@ -240,6 +240,10 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
public async Task<double> GetRestDayTotalByYearForUserAsync(Guid keycloakUserId, int year)
{
var startFiscalDate = new DateTime(year - 1, 10, 1);
var endFiscalDate = new DateTime(year, 9, 30);
var leaveType = await _dbContext.Set<LeaveType>().AsQueryable().AsNoTracking()
.FirstOrDefaultAsync(l => l.Code.Trim().ToUpper() == "LV-005");
@ -252,7 +256,8 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
.Include(x => x.Type)
.Where(x => x.KeycloakUserId == keycloakUserId)
.Where(x => x.Type.Id == leaveType.Id)
.Where(x => x.LeaveStartDate.Year == year)
//.Where(x => x.LeaveStartDate.Year == year)
.Where(x => x.LeaveStartDate.Date >= startFiscalDate && x.LeaveStartDate.Date <= endFiscalDate)
.Where(x => x.LeaveStatus == "APPROVE")
.Sum(x => x.LeaveTotal);
@ -261,11 +266,15 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
public async Task<double> GetSumLeaveByTypeForUserAsync(Guid keycloakUserId, Guid leaveTypeId, int year)
{
var startFiscalDate = new DateTime(year - 1, 10, 1);
var endFiscalDate = new DateTime(year, 9, 30);
var data = await _dbContext.Set<LeaveRequest>().AsQueryable().AsNoTracking()
.Include(x => x.Type)
.Where(x => x.KeycloakUserId == keycloakUserId)
.Where(x => x.Type.Id == leaveTypeId)
.Where(x => x.LeaveStartDate.Year == year)
//.Where(x => x.LeaveStartDate.Year == year)
.Where(x => x.LeaveStartDate.Date >= startFiscalDate && x.LeaveStartDate.Date <= endFiscalDate)
.Where(x => x.LeaveStatus == "APPROVE")
//.Where(x => x.LeaveStatus != "REJECT" && x.LeaveStatus != "DELETE")
.ToListAsync();

View file

@ -191,5 +191,9 @@ namespace BMA.EHR.Domain.Models.Leave.Requests
public DateTime? BirthDate { get; set; } = DateTime.MinValue;
public DateTime? DateAppoint { get; set; } = DateTime.MinValue;
public string? LeaveSubTypeName { get; set; } = string.Empty;
public string? CommanderPosition { get; set; } = string.Empty;
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,29 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace BMA.EHR.Infrastructure.Migrations.LeaveDb
{
/// <inheritdoc />
public partial class AddLeaveSubType : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<string>(
name: "LeaveSubTypeName",
table: "LeaveRequests",
type: "longtext",
nullable: true)
.Annotation("MySql:CharSet", "utf8mb4");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "LeaveSubTypeName",
table: "LeaveRequests");
}
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,29 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace BMA.EHR.Infrastructure.Migrations.LeaveDb
{
/// <inheritdoc />
public partial class AddLeaveCommanderPosition : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<string>(
name: "CommanderPosition",
table: "LeaveRequests",
type: "longtext",
nullable: true)
.Annotation("MySql:CharSet", "utf8mb4");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "CommanderPosition",
table: "LeaveRequests");
}
}
}

View file

@ -320,6 +320,9 @@ namespace BMA.EHR.Infrastructure.Migrations.LeaveDb
b.Property<string>("CitizenId")
.HasColumnType("longtext");
b.Property<string>("CommanderPosition")
.HasColumnType("longtext");
b.Property<string>("CoupleDayCountryHistory")
.HasColumnType("longtext");
@ -481,6 +484,9 @@ namespace BMA.EHR.Infrastructure.Migrations.LeaveDb
.HasColumnType("longtext")
.HasComment("สถานะของคำร้อง");
b.Property<string>("LeaveSubTypeName")
.HasColumnType("longtext");
b.Property<double>("LeaveTotal")
.HasColumnType("double");

View file

@ -170,6 +170,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var leaveRequest = new LeaveRequest
{
Type = leaveType,
LeaveSubTypeName = req.LeaveSubTypeName,
LeaveRange = req.LeaveRange,
LeaveStartDate = req.LeaveStartDate,
LeaveEndDate = req.LeaveEndDate,
@ -1170,7 +1171,7 @@ namespace BMA.EHR.Leave.Service.Controllers
LeaveTypeId = item.Type.Id,
LeaveTypeName = item.Type.Name,
FullName = $"{item.Prefix}{item.FirstName} {item.LastName}",
DateSendLeave = item.CreatedAt.Date,
DateSendLeave = item.CreatedAt,
IsDelete = item.LeaveStatus == "DELETE",
Status = item.LeaveStatus,
LeaveStartDate = item.LeaveStartDate,
@ -1233,15 +1234,17 @@ namespace BMA.EHR.Leave.Service.Controllers
var sumWeekend = _holidayRepository.GetWeekEndCount(rawData.LeaveStartDate, rawData.LeaveEndDate, category);
var orgName = rawData.Root ?? "";
var orgName = "";
if (rawData.Child1 != null && rawData.Child1 != "")
orgName += $"/{rawData.Child1}";
orgName += $" {rawData.Child1}";
if (rawData.Child2 != null && rawData.Child2 != "")
orgName += $"/{rawData.Child2}";
orgName += $" {rawData.Child2}";
if (rawData.Child3 != null && rawData.Child3 != "")
orgName += $"/{rawData.Child3}";
orgName += $" {rawData.Child3}";
if (rawData.Child4 != null && rawData.Child4 != "")
orgName += $"/{rawData.Child4}";
orgName += $" {rawData.Child4}";
if (rawData.Root != null && rawData.Root != "")
orgName += $" {rawData.Root}";
var result = new GetLeaveRequestByIdDto
@ -1249,6 +1252,7 @@ namespace BMA.EHR.Leave.Service.Controllers
Id = rawData.Id,
LeaveRange = rawData.LeaveRange ?? "",
LeaveTypeName = rawData.Type.Name,
LeaveSubTypeName = rawData.LeaveSubTypeName,
LeaveTypeId = rawData.Type.Id,
FullName = $"{rawData.Prefix}{rawData.FirstName} {rawData.LastName}",
DateSendLeave = rawData.CreatedAt,
@ -1397,6 +1401,7 @@ namespace BMA.EHR.Leave.Service.Controllers
Id = item.Id,
LeaveTypeId = item.Type.Id,
LeaveTypeName = item.Type.Name,
LeaveSubTypeName = item.LeaveSubTypeName,
FullName = $"{item.Prefix}{item.FirstName} {item.LastName}",
ProfileType = item.ProfileType ?? "-",
DateSendLeave = item.CreatedAt,
@ -1509,6 +1514,7 @@ namespace BMA.EHR.Leave.Service.Controllers
Id = item.Id,
LeaveTypeId = item.Type.Id,
LeaveTypeName = item.Type.Name,
LeaveSubTypeName = item.LeaveSubTypeName,
ProfileType = item.ProfileType ?? "-",
FullName = $"{item.Prefix}{item.FirstName} {item.LastName}",
DateSendLeave = item.CreatedAt.Date,
@ -1561,6 +1567,7 @@ namespace BMA.EHR.Leave.Service.Controllers
{
Id = rawData.Id,
LeaveTypeName = rawData.Type.Name,
LeaveSubTypeName = rawData.LeaveSubTypeName,
FullName = $"{rawData.Prefix}{rawData.FirstName} {rawData.LastName}",
Status = rawData.LeaveCancelStatus ?? "",
LeaveStartDate = rawData.LeaveStartDate,
@ -1894,6 +1901,7 @@ namespace BMA.EHR.Leave.Service.Controllers
ReasonOligarch = rawData.LeaveDirectorComment ?? "",
ProfileType = rawData.ProfileType,
LeaveTypeName = rawData.Type.Name,
LeaveSubTypeName = rawData.LeaveSubTypeName,
LeaveTypeId = rawData.Type.Id,
FullName = $"{rawData.Prefix}{rawData.FirstName} {rawData.LastName}",
DateSendLeave = rawData.CreatedAt,

View file

@ -7,6 +7,8 @@ namespace BMA.EHR.Leave.Service.DTOs.LeaveRequest
[Required]
public Guid Type { get; set; } = Guid.Empty;
public string? LeaveSubTypeName { get; set; } = string.Empty;
[Required]
public DateTime LeaveStartDate { get; set; } = DateTime.Now;
@ -97,5 +99,6 @@ namespace BMA.EHR.Leave.Service.DTOs.LeaveRequest
public string? CoupleDaySumTotalHistory { get; set; }
}
}

View file

@ -6,6 +6,8 @@
public string LeaveTypeName { get; set; } = string.Empty;
public string? LeaveSubTypeName { get; set; } = string.Empty;
public string FullName { get; set; } = string.Empty;
public string Status { get; set; } = string.Empty;

View file

@ -6,7 +6,9 @@
public string LeaveTypeName { get; set; }
public Guid LeaveTypeId { get; set; }
public string? LeaveSubTypeName { get; set; } = string.Empty;
public Guid LeaveTypeId { get; set; }
public string FullName { get; set; }

View file

@ -9,6 +9,8 @@ namespace BMA.EHR.Leave.Service.DTOs.LeaveRequest
public string LeaveTypeName { get; set; } = string.Empty;
public string? LeaveSubTypeName { get; set; } = string.Empty;
public Guid LeaveTypeId { get; set; } = Guid.Empty;
public string FullName { get; set; } = string.Empty;

View file

@ -18,6 +18,8 @@ namespace BMA.EHR.Leave.Service.DTOs.LeaveRequest
public string LeaveTypeName { get; set; } = string.Empty;
public string? LeaveSubTypeName { get; set; } = string.Empty;
public Guid LeaveTypeId { get; set; } = Guid.Empty;
public string FullName { get; set; } = string.Empty;

View file

@ -6,6 +6,8 @@
public string LeaveTypeName { get; set; } = string.Empty;
public string? LeaveSubTypeName { get; set; } = string.Empty;
public Guid LeaveTypeId { get; set; } = Guid.Empty;
public string FullName { get; set; } = string.Empty;