private async Task <List <ParentStudentsModel> > GetParentsStudentsByQueueParams(string[] validParentDescriptors, string[] validEmailTypeDescriptors, string personUniqueId, string gmType, string parameters) { List <ParentStudentsModel> parents = new List <ParentStudentsModel>(); if (GroupMessagesQueueTypeEnum.Group.DisplayName.Equals(gmType)) { var filterParams = JsonConvert.DeserializeObject <GroupMessagesFilterParamsModel>(parameters); parents = await _communicationsRepository.GetParentsByGradeLevelsAndPrograms(personUniqueId, filterParams.gradeLevels, filterParams.programs, validParentDescriptors, validEmailTypeDescriptors, _dateProvider.Today()); } if (GroupMessagesQueueTypeEnum.IndividualGroup.DisplayName.Equals(gmType)) { var filterParams = JsonConvert.DeserializeObject <IndividualGroupMessagesFilterParamsModel>(parameters); parents = await _communicationsRepository.GetParentsByPanrentUsisAndGradeLevels(personUniqueId, filterParams.parentsUsis, filterParams.gradeLevels, validParentDescriptors, validEmailTypeDescriptors, _dateProvider.Today()); } return(parents); }