public bool Create(ThongTinQuaTrinhCongTacEntity thongTinQuaTrinhCongTacEntity)
        {
            using (var scope = new TransactionScope())
            {
                try
                {
                    var trinhDoNN = new ThongTinQuaTrinhCongTacs
                    {
                        Id = thongTinQuaTrinhCongTacEntity.Id,
                        DonViCongTac = thongTinQuaTrinhCongTacEntity.DonViCongTac,
                        ChucDanh_ChucVu = thongTinQuaTrinhCongTacEntity.ChucDanh_ChucVu,
                        ThongTinQuaTrinhCongTac_ThongTin2C = thongTinQuaTrinhCongTacEntity.ThongTinQuaTrinhCongTac_ThongTin2C,
                        ThoiGianTu = thongTinQuaTrinhCongTacEntity.ThoiGianTu,
                        ThoiGianDen = thongTinQuaTrinhCongTacEntity.ThoiGianDen
                    };

                    if (trinhDoNN.ThoiGianDen == DateTime.MinValue) { trinhDoNN.ThoiGianDen = null; }
                    if (trinhDoNN.ThoiGianTu == DateTime.MinValue) { trinhDoNN.ThoiGianTu = null; }

                    m_UnitOfWork.ThongTinQuaTrinhCongTacRepository.Insert(trinhDoNN);
                    m_UnitOfWork.Save();
                }
                catch (Exception e)
                {
                    System.Console.WriteLine(e.ToString());
                    return false;
                }
                scope.Complete();
                return true;
            }
        }
 public bool Delete(ThongTinQuaTrinhCongTacEntity thongTinQuaTrinhCongTac)
 {
     try
     {
         this.m_UnitOfWork.ThongTinQuaTrinhCongTacRepository.Delete(thongTinQuaTrinhCongTac);
         return true;
     }
     catch (Exception e)
     {
         System.Console.WriteLine(e.ToString());
         return false;
     }
 }
        /// only return json to client
        public ActionResult Create(ThongTinQuaTrinhCongTacEntity thongTinQuaTrinhCongTac)
        {
            ThongTinQuaTrinhCongTacServices service = new ThongTinQuaTrinhCongTacServices();

            if (thongTinQuaTrinhCongTac == null)
            {
                RenderResult.RequestError(ViewData, "Lỗi đối số không hợp lệ");
                return Json(JsonConvert.SerializeObject(ViewData));
            }

            if (service.Create(thongTinQuaTrinhCongTac))
            {
                return Json(RenderResult.RequestCompleted(ViewData, "Thêm thông tin thành công"));
            }
            else
            {
                return Json(RenderResult.RequestCompleted(ViewData, "Lỗi khi thêm thông tin"));
            }
        }
        /// only return json to client
        public ActionResult Edit(ThongTinQuaTrinhCongTacEntity thongTinQuaTrinhCongTac)
        {
            ThongTinQuaTrinhCongTacServices service = new ThongTinQuaTrinhCongTacServices();

            if (thongTinQuaTrinhCongTac == null)
            {
                return Json(RenderResult.RequestError(ViewData, "Lỗi đối số không hợp lệ"), JsonRequestBehavior.AllowGet);
            }

            try
            {
                if (service.Update(thongTinQuaTrinhCongTac))
                    return Json(RenderResult.RequestCompleted(ViewData, "Chỉnh sửa thành công"));

                return Json(RenderResult.RequestCompleted(ViewData, "Chỉnh sửa không thành công"));
            }
            catch (Exception e)
            {
                System.Console.WriteLine(e.ToString());

                return Json(RenderResult.RequestError(ViewData, "Lỗi xảy ra"));
            }
        }
        public ActionResult Delete(ThongTinQuaTrinhCongTacEntity thongTinQuaTrinhCongTac)
        {
            ThongTinQuaTrinhCongTacServices service = new ThongTinQuaTrinhCongTacServices();

            try
            {
                if (service.Delete(thongTinQuaTrinhCongTac))
                    return Json(RenderResult.RequestCompleted(ViewData, "Xóa thành công"));

                return Json(RenderResult.RequestCompleted(ViewData, "Xóa không thành công"));
            }
            catch (Exception e)
            {
                System.Console.WriteLine(e.ToString());
                return Json(RenderResult.RequestError(ViewData, "Lỗi xảy ra"));
            }

        }
        public List<ThongTinQuaTrinhCongTacEntity> GetAll()
        {
            IEnumerable<ThongTinQuaTrinhCongTacs> model = this.m_UnitOfWork.ThongTinQuaTrinhCongTacRepository.GetAll();
            List<ThongTinQuaTrinhCongTacEntity> result = new List<ThongTinQuaTrinhCongTacEntity>();

            foreach (var item in model)
            {
                ThongTinQuaTrinhCongTacEntity ttQTCT = new ThongTinQuaTrinhCongTacEntity
                {
                    Id = item.Id,
                    DonViCongTac = item.DonViCongTac,
                    ThongTinQuaTrinhCongTac_ThongTin2C = item.ThongTinQuaTrinhCongTac_ThongTin2C,
                    ThoiGianTu = item.ThoiGianTu,
                    ThoiGianDen = item.ThoiGianDen
                };
                if (ttQTCT.ThoiGianTu == DateTime.MinValue) { ttQTCT.ThoiGianTu = null; }
                if (ttQTCT.ThoiGianDen == DateTime.MinValue) { ttQTCT.ThoiGianDen = null; }
                result.Add(ttQTCT);
            }
            return result;
        }
 public bool Update(ThongTinQuaTrinhCongTacEntity thongTinQuaTrinhCongTacEntity)
 {
     var success = false;
     if (thongTinQuaTrinhCongTacEntity != null)
     {
         using (var scope = new TransactionScope())
         {
             var ttQTCT = m_UnitOfWork.ThongTinQuaTrinhCongTacRepository.GetByID(thongTinQuaTrinhCongTacEntity.Id);
             if (ttQTCT != null)
             {
                 ttQTCT.Id = thongTinQuaTrinhCongTacEntity.Id;
                 ttQTCT.DonViCongTac = thongTinQuaTrinhCongTacEntity.DonViCongTac;
                 ttQTCT.ChucDanh_ChucVu = thongTinQuaTrinhCongTacEntity.ChucDanh_ChucVu;
                 ttQTCT.ThoiGianDen = thongTinQuaTrinhCongTacEntity.ThoiGianDen;
                 ttQTCT.ThoiGianTu = thongTinQuaTrinhCongTacEntity.ThoiGianTu;
                 
                 m_UnitOfWork.ThongTinQuaTrinhCongTacRepository.Update(ttQTCT);
                 m_UnitOfWork.Save();
                 scope.Complete();
                 success = true;
             }
         }
     }
     return success;
 }