public IActionResult EditReason(int nID)
        {
            var        result     = new cListReason();
            cTB_Reason EditReason = new cTB_Reason();

            try
            {
                PTTGSP_DWSContext db = new PTTGSP_DWSContext();

                var lstReason = db.TB_Reason.Where(w => !w.IsDel && w.nReasonID == nID).ToList();
                EditReason = (from s in lstReason.Where(w => !w.IsDel)
                              select new cTB_Reason
                {
                    nReasonID = s.nReasonID,
                    sName = s.sName,
                    sDetail = s.sDetail,
                    bStatus = s.IsActive,
                    sStatus_Name = s.IsActive ? "ใช้งาน" : "ไม่ใช้งาน",
                    dUpdate = s.dUpdate,
                    sUpdate = s.dUpdate.ToString("dd/MM/yyyy", culture),
                }).FirstOrDefault();
            }
            catch (Exception e)
            {
                result.sStatus = SysFunc.process_Error;
                result.sMsg    = e.Message;
            }
            return(Ok(EditReason));
        }
        public cListReason GetListReason(string txtSearch, string sIsActive)
        {
            var result = new cListReason();

            try
            {
                PTTGSP_DWSContext db = new PTTGSP_DWSContext();

                var lstReason = db.TB_Reason.Where(w => !w.IsDel).ToList();
                var lst_Work  = db.TB_Work.Where(w => !w.IsDel).ToList();
                var Reason    = (from s in lstReason
                                 select new lst_Reason
                {
                    nReasonID = s.nReasonID,
                    sName = s.sName,
                    sDetail = s.sDetail,
                    bStatus = s.IsActive,
                    sStatus_Name = s.IsActive ? "ใช้งาน" : "ไม่ใช้งาน",
                    dUpdate = s.dUpdate,
                    sUpdate = s.dUpdate.ToString("dd/MM/yyyy", culture),
                    IsUse = lst_Work.Where(w => w.nReasonID == s.nReasonID).FirstOrDefault() == null ? false : true
                }).ToList();

                if (!string.IsNullOrEmpty(txtSearch) && txtSearch != "none")
                {
                    Reason = Reason.Where(item => item.sName.Trim().ToLower().Contains(txtSearch.Trim().ToLower())).ToList();
                }
                if (!string.IsNullOrEmpty(sIsActive))
                {
                    var isActive = sIsActive == "1";
                    Reason = Reason.Where(a => a.bStatus == isActive).ToList();
                }

                result.lst_Reason = Reason.ToList();
            }
            catch (Exception e)
            {
                result.sStatus = SysFunc.process_Error;
                result.sMsg    = e.Message;
            }
            return(result);
        }