/// <summary>
        /// @description: view model văn bản đến
        /// @author: duynn
        /// @since: 06/08/2018
        /// </summary>
        /// <param name="typeOfVanBanDen"></param>
        /// <returns></returns>
        public ListVanBanDenViewModel GetListViewModelOfVanBanDen(int typeOfVanBanDen)
        {
            AssignUserInfo();
            hscvVanBanDenBusiness = Get <HSCV_VANBANDENBusiness>();
            dmDanhMucDataBusiness = Get <DM_DANHMUC_DATABusiness>();

            HSCV_VANBANDEN_SEARCH searchModel = new HSCV_VANBANDEN_SEARCH();

            searchModel.USER_ID   = currentUser.ID;
            searchModel.ITEM_TYPE = MODULE_CONSTANT.VANBANDEN;

            ListVanBanDenViewModel model = new ListVanBanDenViewModel();

            model.userInfo              = currentUser;
            model.typeOfLoaiVanBan      = typeOfVanBanDen;
            model.groupOfLoaiVanBans    = dmDanhMucDataBusiness.DsByMaNhom(DMLOAI_CONSTANT.LOAI_VANBAN, 0);
            model.groupOfLinhVucVanBans = dmDanhMucDataBusiness.DsByMaNhom(DMLOAI_CONSTANT.LINHVUCVANBAN, 0);
            model.groupOfDoKhans        = dmDanhMucDataBusiness.DsByMaNhom(DMLOAI_CONSTANT.DOKHAN, 0);
            model.groupOfDoUuTiens      = dmDanhMucDataBusiness.DsByMaNhom(DMLOAI_CONSTANT.DOUUTIEN, 0);
            int tmpdept = currentUser.DeptParentID.HasValue ? currentUser.DeptParentID.Value : 0;

            model.groupSoVanBanDens = dmDanhMucDataBusiness.DsByMaNhomByDept(DMLOAI_CONSTANT.SOVANBANDEN, 0, tmpdept);
            DM_THAOTAC userFunction = currentUser.ListThaoTac.Where(o => o.MA_THAOTAC.ToUpper() == "HSCV_VANBANDEN_CREATE").FirstOrDefault();

            model.canCreate = (userFunction != null && userFunction.DM_THAOTAC_ID > 0);
            string sessionName;

            switch (typeOfVanBanDen)
            {
            case VANBANDEN_CONSTANT.CHUA_XULY:
                sessionName             = "VanBanDenChuaXuLySearchModel";
                model.title             = "Quản lý văn bản đến chưa xử lý";
                model.groupOfVanBanDens = hscvVanBanDenBusiness.GetListInProcess(searchModel);
                break;

            case VANBANDEN_CONSTANT.DA_XULY:
                sessionName             = "VanBanDenDaXuLySearchModel";
                model.title             = "Quản lý văn bản đến đã xử lý";
                model.groupOfVanBanDens = hscvVanBanDenBusiness.GetListProcessed(searchModel);
                break;

            case VANBANDEN_CONSTANT.THAMGIA_XULY:
                sessionName             = "VanBanDenThamGiaXuLySearchModel";
                model.title             = "Quản lý văn bản đến tham gia xử lý";
                model.groupOfVanBanDens = hscvVanBanDenBusiness.GetListJoinProcess(searchModel);
                break;

            case VANBANDEN_CONSTANT.NOIBO_CHUAXULY:
                sessionName             = "VanBanDenNoiBoChuaXuLySearchModel";
                searchModel.isInternal  = true;
                searchModel.ITEM_TYPE   = MODULE_CONSTANT.VANBANDENNOIBO;
                model.title             = "Quản lý văn bản đến nội bộ chưa xử lý";
                model.groupOfVanBanDens = hscvVanBanDenBusiness.GetListInProcess(searchModel);
                break;

            case VANBANDEN_CONSTANT.NOIBO_DAXULY:
                searchModel.isInternal  = true;
                searchModel.ITEM_TYPE   = MODULE_CONSTANT.VANBANDENNOIBO;
                sessionName             = "VanBanDenNoiBoDaXuLySearchModel";
                model.title             = "Quản lý văn bản đến nội bộ đã xử lý";
                model.groupOfVanBanDens = hscvVanBanDenBusiness.GetListProcessed(searchModel);
                break;

            default:
                sessionName = string.Empty;
                break;
            }
            SessionManager.SetValue(sessionName, searchModel);
            return(model);
        }