public ActionResult Search(ViewModelSearchDM_CANGCA SearchModel)
        {
            string ma_TinhTP = string.Empty;

            initialCategorySearchAction(SearchModel, ref ma_TinhTP);


            var DM_CANGCAs = db.DM_CANGCA.Where(o => (SearchModel.TEN_CANG == null || o.TEN_CANG.ToUpper().Contains(SearchModel.TEN_CANG.ToUpper())) &&
                                                (SearchModel.DIA_CHI == null || o.DIA_CHI.ToUpper().Contains(SearchModel.DIA_CHI.ToUpper())) &&
                                                ((string.IsNullOrEmpty(SearchModel.MA_TINHTP) && ma_TinhTP.StartsWith("Z")) || (string.IsNullOrEmpty(SearchModel.MA_TINHTP) && o.MA_TINHTP == ma_TinhTP) || o.MA_TINHTP == SearchModel.MA_TINHTP) &&
                                                (SearchModel.MA_QUANHUYEN == null || o.MA_QUANHUYEN == SearchModel.MA_QUANHUYEN) &&
                                                (SearchModel.MA_PHUONGXA == null || o.MA_PHUONGXA == SearchModel.MA_PHUONGXA) &&
                                                (SearchModel.DPHAN_LOAI_CANGID == null || o.DPHAN_LOAI_CANGID == SearchModel.DPHAN_LOAI_CANGID)
                                                ).Select(x => new { x.ID, x.MA_TINHTP, x.TEN_CANG, x.DIA_CHI, x.DIEN_THOAI, x.DPHAN_LOAI_CANG, x.DTINHTP, x.DQUANHUYEN, x.DPHUONGXA, x.Status }).OrderByDescending(x => x.ID)
            ;

            List <DM_CANGCA> DSDM_CANGCA = new List <DM_CANGCA>();

            foreach (var dm_cangca in DM_CANGCAs)
            {
                DSDM_CANGCA.Add(new DM_CANGCA
                {
                    ID              = dm_cangca.ID,
                    MA_TINHTP       = dm_cangca.MA_TINHTP,
                    TEN_CANG        = dm_cangca.TEN_CANG,
                    DIA_CHI         = dm_cangca.DIA_CHI,
                    DPHAN_LOAI_CANG = dm_cangca.DPHAN_LOAI_CANG,
                    DIEN_THOAI      = dm_cangca.DIEN_THOAI,
                    DTINHTP         = dm_cangca.DTINHTP,
                    DQUANHUYEN      = dm_cangca.DQUANHUYEN,
                    DPHUONGXA       = dm_cangca.DPHUONGXA,
                    Status          = dm_cangca.Status
                });
            }

            ViewBag.TotalRow = DSDM_CANGCA.Count().ToString();
            //Phân trang ở đây:
            var pageIndex = SearchModel.Page ?? 1;

            SearchModel.SearchResults = DSDM_CANGCA.ToPagedList(pageIndex, FDB.Common.Constants.PageSize);

            return(View(SearchModel));
        }
        public void initialCategorySearchAction(ViewModelSearchDM_CANGCA searchModel, ref string ma_Tinh)
        {
            ViewBag.PHAN_LOAI_CANG_CAs = new SelectList(db.DPHAN_LOAI_CANG, "ID", "Name");
            //ViewBag.DTINHTPs = new SelectList(db.DTINHTP, "MA_TINHTP", "TEN_TINHTP");
            ApplicationUser curUser = getCurrentUser();


            var tinh = db.DTINHTP.Where(u => curUser.MA_TINHTP.StartsWith("Z") || u.MA_TINHTP == curUser.MA_TINHTP).Except(db.DTINHTP.Where(d => d.MA_TINHTP.StartsWith("Z") == true));

            ViewBag.DTINHTPs = new SelectList(tinh, "MA_TINHTP", "TEN_TINHTP");

            var quanhuyen = db.DQUANHUYEN.Where(d => d.MA_TINHTP == searchModel.MA_TINHTP);
            var phuongxa  = db.DPHUONGXA.Where(d => d.MA_QUANHUYEN == searchModel.MA_QUANHUYEN);

            ViewBag.QUAN_HUYENs = new SelectList(quanhuyen, "MA_QUANHUYEN", "TEN_QUANHUYEN");
            ViewBag.PHUONG_XAs  = new SelectList(phuongxa, "MA_PHUONGXA", "TEN_PHUONGXA");

            ViewBag.DEFAULT_VALUE_DDL = CategoryCommon.DEFAULT_VALUE_DDL;
            ma_Tinh = curUser.MA_TINHTP;
        }