hrms-api-backend/BMA.EHR.Domain/Models/Leave/TimeAttendants/UserTimeStamp.cs

44 lines
2 KiB
C#

using BMA.EHR.Domain.Models.Base;
using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;
namespace BMA.EHR.Domain.Models.Leave.TimeAttendants
{
public class UserTimeStamp : EntityBase
{
[Required, Comment("รหัส User ของ Keycloak")]
public Guid KeycloakUserId { get; set; } = Guid.Empty;
[Required, Comment("วัน เวลา เข้างาน")]
public DateTime CheckIn { get; set; } = DateTime.MinValue;
[Comment("วัน เวลา ออกงาน")]
public DateTime? CheckOut { get; set; }
[Required, Comment("นำไปประมวลผลแล้วหรือยัง")]
public bool IsProcess { get; set; } = false;
[Required, Comment("พิกัดละติจูด")]
public double Lat { get; set; } = 0;
[Required, Comment("พิกัดลองจิจูด")]
public double Lon { get; set; } = 0;
[Required, Comment("ชื่อสถานที่ ได้มาจากระบบ ArcGis ของกองสารสนเทศภูมิศาสตร์")]
public string POI { get; set; } = string.Empty;
[Required, Comment("true คือ ณ สถานที่ตั้ง, false คือ นอกสถานที่ตั้ง")]
public bool IsLocation { get; set; } = true;
[Comment("กรณีเลือกนอกสถานที่ตั้ง ต้องระบุข้อมูลชื่อสถานะที่")]
public string? LocationName { get; set; } = string.Empty;
[Required, Comment("รูปถ่ายสถานที่ checkin/checkout")]
public string ImageUrl { get; set; } = string.Empty;
[Comment("ข้อความหมายเหตุที่ต้องการระบุเพิ่ม(มีเผื่อไว้อาจไม่ได้ใช้)")]
public string? Remark { get; set; } = string.Empty;
}
}