public bool Delete(LoaiCoSoEntity _LoaiCoSo)
 {
     try
     {
         this.m_UnitOfWork.LoaiCoSoRepository.Delete(_LoaiCoSo);
         return true;
     }
     catch (Exception e)
     {
         System.Console.WriteLine(e.ToString());
         return false;
     }
 }
        public bool Update(LoaiCoSoEntity _LoaiCoSo)
        {
            var LoaiCoSo = this.m_UnitOfWork.LoaiCoSoRepository.GetByID(_LoaiCoSo.Id);

            if (LoaiCoSo == null)
                return false;

            if(LoaiCoSo != null)
            {
                LoaiCoSo.MaQuyDinh = _LoaiCoSo.MaQuyDinh;
                LoaiCoSo.TenLoai = _LoaiCoSo.TenLoai;
                LoaiCoSo.Cap = _LoaiCoSo.Cap;
                this.m_UnitOfWork.LoaiCoSoRepository.Update(LoaiCoSo);
                this.m_UnitOfWork.Save();
            }

            return true;
        }
        /// only return json to client
        public ActionResult Create(LoaiCoSoEntity loaicoso)
        {
            LoaiCoSoService service = new LoaiCoSoService();

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

            if (service.Create(loaicoso))
            {
                return Json(RenderResult.RequestCompleted(ViewData, "Thêm loại cơ sở thành công"));
            }
            else
            {

                return Json(RenderResult.RequestCompleted(ViewData, "Lỗi khi thêm loại cơ sở"));
            }
        }
        public ActionResult Edit(LoaiCoSoEntity loaicoso)
        {
            LoaiCoSoService service = new LoaiCoSoService();

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

            try
            {
                if (service.Update(loaicoso))
                    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 bool Create(LoaiCoSoEntity _LoaiCoSo)
        {
            try
            {
                var LoaiCoSo = new LoaiCoSos
                {
                    Id = _LoaiCoSo.Id,
                    MaQuyDinh = _LoaiCoSo.MaQuyDinh,
                    TenLoai = _LoaiCoSo.TenLoai,
                };

                this.m_UnitOfWork.LoaiCoSoRepository.Insert(LoaiCoSo);
                this.m_UnitOfWork.Save();

                return true;
            }
            catch (Exception e)
            {
                System.Console.WriteLine(e.ToString());
                return false;
            }

            
        }
        public List<LoaiCoSoEntity> GetAll()
        {
            IEnumerable<LoaiCoSos> model = this.m_UnitOfWork.LoaiCoSoRepository.GetAll();
            List<LoaiCoSoEntity> result = new List<LoaiCoSoEntity>();

            foreach (var item in model)
            {
                LoaiCoSoEntity loaicoso = new LoaiCoSoEntity
                {
                    Id = item.Id,
                    MaQuyDinh = item.MaQuyDinh,
                    TenLoai  = item.TenLoai,
                    Cap = item.Cap
                };
                result.Add(loaicoso);
            }

            return result;
        }
        public ActionResult Delete(LoaiCoSoEntity loaicoso)
        {
            LoaiCoSoService service = new LoaiCoSoService();

            try
            {
                if (service.Delete(loaicoso))
                    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"));
            }

        }