167 lines
12 KiB
C#
167 lines
12 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
using BMA.EHR.Domain.Models.Base;
|
|
using BMA.EHR.Domain.Models.Organizations;
|
|
using Microsoft.EntityFrameworkCore;
|
|
|
|
namespace BMA.EHR.Domain.Models.Discipline
|
|
{
|
|
public class DisciplineDisciplinary : EntityBase
|
|
{
|
|
|
|
[Required, Comment("สถานะเรื่องร้องเรียน มีดังนี้ ใหม่ (NEW), ยุติเรื่อง (STOP), มีมูลส่งไปสืบสวนแล้ว (SEND_INVESTIGATE)")]
|
|
public string Status { get; set; } = string.Empty;
|
|
[Required, Comment("ผู้ถูกร้องเรียน (PERSON คือ บุคคล, ORGANIZATION คือ หน่วยงาน, BANGKOK คือ กรุงเทพมหานคร)")]
|
|
public string RespondentType { get; set; } = string.Empty;
|
|
|
|
[Required, Comment("เรื่องที่ร้องเรียน"), Column(TypeName = "text")]
|
|
public string Title { get; set; } = string.Empty;
|
|
|
|
[Comment("รายละเอียดของเรื่องร้องเรียน"), Column(TypeName = "text")]
|
|
public string? Description { get; set; } = string.Empty;
|
|
|
|
[Comment("วันที่รับเรื่อง เป็นวันที่ถือเป็นจุดเริ่มต้นของวินัยนั้น ๆ")]
|
|
public DateTime? DateReceived { get; set; }
|
|
[Comment("ระดับการพิจารณา 'ยังไม่ระบุ' (NORMAL คือ ปกติ, URGENT คือ ด่วน, VERY_URGENT คือ ด่วนมาก)")]
|
|
public string? LevelConsideration { get; set; } = string.Empty;
|
|
|
|
[Comment("วันที่กำหนดพิจารณา")]
|
|
public DateTime? DateConsideration { get; set; }
|
|
[Comment("ลักษณะความผิดครั้งแรกจะเป็น 'ยังไม่ระบุ' (NOT_SPECIFIED คือ ยังไม่ระบุ, NOT_DEADLY คือ ไม่ร้ายแรง, DEADLY คือ ร้ายแรง)")]
|
|
public string? OffenseDetails { get; set; } = string.Empty;
|
|
|
|
[Comment("วันแจ้งเตือนล่วงหน้า")]
|
|
public DateTime? DateNotification { get; set; }
|
|
[Comment("รับเรื่องร้องเรียนจาก ระบุว่ารับเรื่องมาจากใคร/หน่วยงานไหน (สตง., ปปช., ปปท., จดหมาย, อีเมล, โทรศัพท์, บอกกล่าว)")]
|
|
public string? ComplaintFrom { get; set; } = string.Empty;
|
|
|
|
[Comment("ผู้ร้องเรียน")]
|
|
public string? Appellant { get; set; } = string.Empty;
|
|
|
|
// [Required, Comment("อ้างอิงรหัสเอกสาร")]
|
|
// public Document Document { get; set; }
|
|
|
|
[Comment("ผลการตรวจสอบเรื่องร้องเรียน")]
|
|
public string? ResultComplaint { get; set; }
|
|
|
|
[Comment("ผลการตรวจสอบเรื่องสืบสวน")]
|
|
public string? ResultInvestigate { get; set; }
|
|
|
|
[Comment("ผลการตรวจสอบ")]
|
|
public string? Result { get; set; }
|
|
|
|
[Comment("กรณีหน่วยงานใส่หน่วยงาน")]
|
|
public string? Organization { get; set; }
|
|
|
|
[Comment("กรณีหน่วยงานใส่หน่วยงาน id")]
|
|
public string? OrganizationId { get; set; }
|
|
|
|
[Comment("หน่วยงานที่พิจารณา จะเปลี่ยนไปตามผู้ถูกร้องดูรายละเอียดด้านล่าง")]
|
|
public string? ConsideredAgency { get; set; }
|
|
|
|
[Comment("หน่วยงานที่พิจารณา จะเปลี่ยนไปตามผู้ถูกร้องดูรายละเอียดด้านล่าง id")]
|
|
public string? ConsideredAgencyId { get; set; }
|
|
|
|
[Comment("version หน่วยงาน")]
|
|
public string? activeId { get; set; }
|
|
|
|
|
|
[Comment("ลักษณะการสืบสวน (APPOINT_DIRECTORS คือ แต่งตั้งกรรมการสืบสวน, SECRET_INVESTIGATION คือ สืบสวนทางลับ, OTHER คือ อื่น ๆ)")]
|
|
public string? InvestigationDetail { get; set; }
|
|
|
|
[Comment("ลักษณะการสืบสวนกรณีเลือกอื่นๆ")]
|
|
public string? InvestigationDetailOther { get; set; }
|
|
|
|
[Comment("วันที่เริ่มการสืบสวน")]
|
|
public DateTime? InvestigationDateStart { get; set; }
|
|
|
|
[Comment("วันที่สิ้นสุดการสืบสวน")]
|
|
public DateTime? InvestigationDateEnd { get; set; }
|
|
|
|
[Comment("รายละเอียดเกี่ยวกับการสืบสวน")]
|
|
public string? InvestigationDescription { get; set; }
|
|
|
|
[Comment("สถานะหรือผลการสืบสวน (NOT_SPECIFIED คือ ยังไม่ระบุ, HAVE_CAUSE คือ มีมูล, NO_CAUSE คือ ไม่มีมูล")]
|
|
public string? InvestigationStatusResult { get; set; }
|
|
|
|
[Comment("กรณีมีมูลต้องเลือกว่า 'ร้ายแรง' หรือ 'ไม่ร้ายแรง'")]
|
|
public string? InvestigationCauseText { get; set; }
|
|
|
|
[Comment("ขยายเวลา")]
|
|
public bool InvestigationExtendStatus { get; set; } = false;
|
|
|
|
[Comment("จำนวนวันที่ต้องการขยาย")]
|
|
public int? InvestigationDaysExtend { get; set; }
|
|
|
|
|
|
[Comment("พยานและบันทึกถ้อยคำพยาน")]
|
|
public string? DisciplinaryWitnesses { get; set; }
|
|
[Comment("บันทึกถ้อยคำของผู้กล่าวหา")]
|
|
public string? DisciplinaryRecordAccuser { get; set; }
|
|
[Comment("สรุปพยานหลักฐานสนับสนุนข้อกล่าวหา")]
|
|
public string? DisciplinarySummaryEvidence { get; set; }
|
|
[Comment("อ้างอิงมาตราตามกฎหมาย")]
|
|
public string? DisciplinaryRefLaw { get; set; }
|
|
[Comment("ระดับโทษความผิด กรณีไม่ร้ายแรง: ภาคทัณฑ์, ตัดเงินเดือน, ลดขั้นเงินเดือน | กรณีร้ายแรง: ปลดออก, ไล่ออก")]
|
|
public string? DisciplinaryFaultLevel { get; set; }
|
|
[Comment("สอบสวนที่")]
|
|
public string? DisciplinaryInvestigateAt { get; set; }
|
|
[Comment("กรณีความผิด")]
|
|
public string? DisciplinaryCaseFault { get; set; }
|
|
[Comment("วันที่สรุปพยานหลักฐาน")]
|
|
public DateTime? DisciplinaryDateEvident { get; set; }
|
|
[Comment("วันที่รับทราบข้อกล่าวหา")]
|
|
public DateTime? DisciplinaryDateAllegation { get; set; }
|
|
[Comment("วันที่เริ่มการสอบสวน")]
|
|
public DateTime? DisciplinaryDateStart { get; set; }
|
|
[Comment("วันที่สิ้นสุดการสอบสวน")]
|
|
public DateTime? DisciplinaryDateEnd { get; set; }
|
|
[Comment("จำนวนวันที่ขยาย")]
|
|
public int? DisciplinaryDaysExtend { get; set; }
|
|
[Comment("ขยายเวลา")]
|
|
public bool DisciplinaryExtendStatus { get; set; } = false;
|
|
[Comment("วันที่มีคำสั่งให้สอบสวน")]
|
|
public DateTime? DisciplinaryDateInvestigation { get; set; }
|
|
[Comment("วันที่รายงานผลการสอบสวน")]
|
|
public DateTime? DisciplinaryDateResult { get; set; }
|
|
|
|
[Comment("ผลการสอบสวน ผล")]
|
|
public string? DisciplinaryStatusResult { get; set; }
|
|
[Comment("ผลการสอบสวน กรณีมีมูล")]
|
|
public string? DisciplinaryCauseText { get; set; }
|
|
[Comment("ผลการสอบสวน เหตุผล")]
|
|
public string? DisciplinaryResult { get; set; }
|
|
|
|
|
|
[Comment("สรุปผลการพิจารณา")]
|
|
public string? ResultDescription { get; set; }
|
|
[Comment("หน่วยงาย/ส่วนราชการ")]
|
|
public string? ResultOc { get; set; }
|
|
[Comment("ประเภทวินัย")]
|
|
public string? ResultDisciplineType { get; set; }
|
|
[Comment("ประเภทของเรื่อง")]
|
|
public string? ResultTitleType { get; set; }
|
|
[Comment("ปีงบประมาณ")]
|
|
public int? ResultYear { get; set; }
|
|
[Comment("ระดับโทษความผิดกรณีอื่นๆ")]
|
|
public string? DisciplinaryFaultLevelOther { get; set; }
|
|
|
|
[Comment("RootDnaId")]
|
|
public Guid? RootDnaId { get; set; }
|
|
|
|
public DisciplineInvestigate DisciplineInvestigate { get; set; }
|
|
public virtual List<DisciplineDisciplinary_ProfileComplaintInvestigate> DisciplineDisciplinary_ProfileComplaintInvestigates { get; set; } = new List<DisciplineDisciplinary_ProfileComplaintInvestigate>();
|
|
public virtual List<DisciplineDisciplinary_DocComplaintInvestigate> DisciplineDisciplinary_DocComplaintInvestigates { get; set; } = new List<DisciplineDisciplinary_DocComplaintInvestigate>();
|
|
public virtual List<DisciplineDisciplinary_DocInvestigate> DisciplineDisciplinary_DocInvestigates { get; set; } = new List<DisciplineDisciplinary_DocInvestigate>();
|
|
public virtual List<DisciplineDisciplinary_DocResult> DisciplineDisciplinary_DocResults { get; set; } = new List<DisciplineDisciplinary_DocResult>();
|
|
public virtual List<DisciplineDisciplinary_DocInvestigateRelevant> DisciplineDisciplinary_DocInvestigateRelevants { get; set; } = new List<DisciplineDisciplinary_DocInvestigateRelevant>();
|
|
public virtual List<DisciplineDisciplinary_DirectorInvestigate> DisciplineDisciplinary_DirectorInvestigates { get; set; } = new List<DisciplineDisciplinary_DirectorInvestigate>();
|
|
|
|
public virtual List<DisciplineDisciplinary_DocSummaryEvidence> DisciplineDisciplinary_DocSummaryEvidences { get; set; } = new List<DisciplineDisciplinary_DocSummaryEvidence>();
|
|
public virtual List<DisciplineDisciplinary_DocRecordAccuser> DisciplineDisciplinary_DocRecordAccusers { get; set; } = new List<DisciplineDisciplinary_DocRecordAccuser>();
|
|
public virtual List<DisciplineDisciplinary_DocWitnesses> DisciplineDisciplinary_DocWitnessess { get; set; } = new List<DisciplineDisciplinary_DocWitnesses>();
|
|
public virtual List<DisciplineDisciplinary_DocOther> DisciplineDisciplinary_DocOthers { get; set; } = new List<DisciplineDisciplinary_DocOther>();
|
|
public virtual List<DisciplineDisciplinary_DocRelevant> DisciplineDisciplinary_DocRelevants { get; set; } = new List<DisciplineDisciplinary_DocRelevant>();
|
|
public virtual List<DisciplineDisciplinaryExtend> DisciplineDisciplinaryExtends { get; set; } = new List<DisciplineDisciplinaryExtend>();
|
|
}
|
|
}
|