//Sortable List
        public DataTable GetPolicyAirOtherGroupItemDataTableItems(int id, int policyGroupId, string filter, string sortField, int sortOrder, int page, ref PolicyAirOtherGroupItemDataTableItemsVM policyAirOtherGroupItemDataTableItemsVM)
        {
            //query db
            string adminUserGuid = HttpContext.Current.User.Identity.Name.Split(new[] { '|' })[0];

            DataSet policyAirOtherGroupItemDataTableItems = new DataSet();

            string connectionStringName = Settings.getConnectionStringName();

            using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings[connectionStringName].ConnectionString))
            {
                using (SqlCommand cmd = new SqlCommand("spDesktopDataAdmin_SelectPolicyAirOtherGroupItemDataTableRows_v1", conn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@PolicyOtherGroupHeaderId", id);
                    cmd.Parameters.AddWithValue("@PolicyGroupId", policyGroupId);
                    cmd.Parameters.AddWithValue("@Filter", filter);
                    cmd.Parameters.AddWithValue("@SortField", sortField);
                    cmd.Parameters.AddWithValue("@SortOrder", sortOrder);
                    cmd.Parameters.AddWithValue("@PageNumber", page);
                    cmd.Parameters.AddWithValue("@AdminUserGuid", adminUserGuid);
                    conn.Open();

                    SqlDataAdapter adapter = new SqlDataAdapter(cmd);
                    adapter.Fill(policyAirOtherGroupItemDataTableItems);
                }
            }

            if (policyAirOtherGroupItemDataTableItems.Tables[1] != null)
            {
                DataTable dt = policyAirOtherGroupItemDataTableItems.Tables[1];

                int totalRecords = (from DataRow dr in dt.Rows select(int) dr["Record Count"]).FirstOrDefault();
                int pageSize     = 16;

                policyAirOtherGroupItemDataTableItemsVM.PageIndex  = page;
                policyAirOtherGroupItemDataTableItemsVM.PageSize   = pageSize;
                policyAirOtherGroupItemDataTableItemsVM.TotalCount = totalRecords;
                policyAirOtherGroupItemDataTableItemsVM.TotalPages = (int)Math.Ceiling(totalRecords / (double)pageSize);
            }

            return(policyAirOtherGroupItemDataTableItems.Tables[0]);
        }
Exemplo n.º 2
0
        //GET: /PolicyAirOtherGroupItemDataTableItem/List
        public ActionResult List(int id, int policyGroupId, string filter, int?page, string sortField, int?sortOrder)
        {
            PolicyAirOtherGroupItemDataTableItemsVM policyAirOtherGroupItemDataTableItemsVM = new PolicyAirOtherGroupItemDataTableItemsVM();

            //Check Policy Exists
            PolicyGroup policyGroup = new PolicyGroup();

            policyGroup = policyGroupRepository.GetGroup(policyGroupId);
            if (policyGroup == null)
            {
                ViewData["ActionMethod"] = "ListGet";
                return(View("RecordDoesNotExistError"));
            }

            policyAirOtherGroupItemDataTableItemsVM.PolicyGroup = policyGroup;

            //Check PolicyOtherGroupHeader Exists
            PolicyOtherGroupHeader policyOtherGroupHeader = new PolicyOtherGroupHeader();

            policyOtherGroupHeader = policyOtherGroupHeaderRepository.GetPolicyOtherGroupHeader(id);
            if (policyOtherGroupHeader == null)
            {
                ViewData["ActionMethod"] = "ListGet";
                return(View("RecordDoesNotExistError"));
            }

            policyAirOtherGroupItemDataTableItemsVM.PolicyOtherGroupHeader = policyOtherGroupHeader;

            //Set Access Rights
            policyAirOtherGroupItemDataTableItemsVM.HasWriteAccess = false;
            RolesRepository rolesRepository = new RolesRepository();

            if (rolesRepository.HasWriteAccessToPolicyGroup(policyGroupId))
            {
                policyAirOtherGroupItemDataTableItemsVM.HasWriteAccess = true;
            }

            //SortField + SortOrder settings
            if (string.IsNullOrEmpty(sortField))
            {
                //Dynamically generated in proc
                sortField = string.Empty;
            }
            ViewData["CurrentSortField"] = sortField;

            if (sortOrder == 1)
            {
                ViewData["NewSortOrder"]     = 0;
                ViewData["CurrentSortOrder"] = 1;
            }
            else
            {
                ViewData["NewSortOrder"]     = 1;
                ViewData["CurrentSortOrder"] = 0;
            }

            DataTable policyAirOtherGroupItemDataTableItems = policyAirOtherGroupItemDataTableItemRepository.GetPolicyAirOtherGroupItemDataTableItems(
                id, policyGroup.PolicyGroupId, filter ?? "", sortField, sortOrder ?? 0, page ?? 1, ref policyAirOtherGroupItemDataTableItemsVM);

            policyAirOtherGroupItemDataTableItemsVM.PolicyAirOtherGroupItemDataTableItems = policyAirOtherGroupItemDataTableItems;

            return(View(policyAirOtherGroupItemDataTableItemsVM));
        }