Beispiel #1
0
        public IEnumerable <Export_By_Service_Group_And_Time> Export_By_Service_Group_And_Time(string fromDate, string toDate, int mainGroup, int districtId, int poId, string currentUser)
        {
            bool isAdmin   = _userRepository.CheckRole(currentUser, "Administrator");
            bool isManager = _userRepository.CheckRole(currentUser, "Manager");

            var    user   = _userRepository.getByUserName(currentUser);
            string userId = null;

            if (user != null)
            {
                userId = user.Id;
            }

            if (isAdmin)
            {
                if (districtId == 0)
                {
                    return(_statisticRepository.Export_By_Service_Group_And_Time(fromDate, toDate, mainGroup));
                }
                else
                {
                    if (poId == 0)
                    {
                        return(_statisticRepository.Export_By_Service_Group_And_Time_District(fromDate, toDate, mainGroup, districtId));
                    }
                    else
                    {
                        return(_statisticRepository.Export_By_Service_Group_And_Time_District_Po(fromDate, toDate, mainGroup, districtId, poId));
                    }
                }
            }
            else
            {
                if (isManager)
                {
                    if (poId == 0)
                    {
                        return(_statisticRepository.Export_By_Service_Group_And_Time_District(fromDate, toDate, mainGroup, districtId));
                    }
                    else
                    {
                        return(_statisticRepository.Export_By_Service_Group_And_Time_District_Po(fromDate, toDate, mainGroup, districtId, poId));
                    }
                }
                else
                {
                    return(_statisticRepository.Export_By_Service_Group_And_Time_User(fromDate, toDate, mainGroup, userId));
                }
            }
        }