Beispiel #1
0
        public AccessRightDTO GetAccessRightsComponent(int Id)
        {
            DataOperations DO     = new DataOperations();
            AccessRightDTO result = new AccessRightDTO
            {
                AccessRightObj = DO.GetAccessRight(Id)
            };

            result.UserObj = DO.GetUser(result.AccessRightObj.UserId);
            return(result);
        }
Beispiel #2
0
        public AccessRightDTO GetAccessRightsComponent(int Id)
        {
            CRUDOperation  DO     = new CRUDOperation();
            AccessRightDTO result = new AccessRightDTO
            {
                AccessRightObj = DO.GetAccessRight(Id)
            };

            result.UserObj = DO.GetUserById(result.AccessRightObj.UserId);
            return(result);
        }
Beispiel #3
0
        private List <AccessRightDTO> GetAccessRightsDTO(Search search, out int _count)
        {
            _count = 0;
            var    result   = new List <AccessRightDTO>();
            string queryEnd = "";
            string head     = "";

            if (search.isCount == false)
            {
                head = @" ar.Id  ";
            }
            else
            {
                head = @" count(ar.ID) ";
            }


            StringBuilder allQuery = new StringBuilder();

            var query = @"SELECT " + head + @" from tbl_AccessRight ar
                          where  ar.Status=1 AND 
	                        ar.UserId=@P_UserId"    ;


            allQuery.Append(query);

            var contName = @" and ar.ControllerDesc like N'%' + @P_ContName + '%'";

            if (!string.IsNullOrEmpty(search.ControllerName))
            {
                allQuery.Append(contName);
            }

            var actionName = @" and ar.ActionDesc like N'%' + @P_ActionName + '%'";

            if (!string.IsNullOrEmpty(search.ActionName))
            {
                allQuery.Append(actionName);
            }


            if (search.isCount == false)
            {
                queryEnd = @" order by ar.InsertDate desc OFFSET ( @PageNo - 1 ) * @RecordsPerPage ROWS
                             FETCH NEXT @RecordsPerPage ROWS ONLY";
            }


            allQuery.Append(queryEnd);



            using (var connection = new SqlConnection(ConnectionStrings.ConnectionString))
            {
                connection.Open();

                using (var command = new SqlCommand(allQuery.ToString(), connection))
                {
                    command.Parameters.AddWithValue("@PageNo", search.pageNumber);
                    command.Parameters.AddWithValue("@RecordsPerPage", search.pageSize);
                    command.Parameters.AddWithValue("@P_UserId", search.UserId);
                    command.Parameters.AddWithValue("@P_ContName", search.ControllerName.GetStringOrEmptyData());
                    command.Parameters.AddWithValue("@P_ActionName", search.ActionName.GetStringOrEmptyData());
                    //command.Parameters.AddWithValue("@id", id);

                    var reader = command.ExecuteReader();

                    while (reader.Read())
                    {
                        if (search.isCount == false)
                        {
                            AccessRightDTO ARC = GetAccessRightsComponent(reader.GetInt32OrDefaultValue(0));
                            result.Add(ARC);
                        }
                        else
                        {
                            _count = reader.GetInt32OrDefaultValue(0);
                        }
                    }
                }
                connection.Close();
            }

            return(result);
        }