---
# System prepended metadata

title: PR - Refactor

---

# PR - Refactor

## Pasando en limpio los cambios que sugirio barcho

1. El metodo de FindByTeamId se mueve del dal de TeamFeatureConfig al dal de team. Tiene que devolver un listado de items o un arreglo vacio 
3. El método de Edit que se encarga de llamar a los métodos del TeamFeatureConfigDal que hacen las consultas, debería ir en el TeamService
4. Cambiar la firma del metodo de GetConfiguration para que reciba un listado de TeamFeatureConfiguration y busque en ese listado el item que matchee el feature name, similar al cambio de FindByTeamId
5. Eliminar el metodo GetPreferredRaterConfigByTeam del service de preferred rater. Esto se mueve al team service? porque la consulta al dal la tengo que hacer en algun lado
6. Junto con el codigo que se mueve al TeamService mover tambien el tema del feature flag que se usaba en el controller 
7. Mover al controller la logica que hoy en dia esta haciendo el front de conseguir la config por defecto para el select y que sea Disabled por default cuando no hay nada. Tambien la parte de armar el string de eventTypeId-eventActivityId. De aca no entendi lo de usar 'OptionBuilder' porque no se que es 
8. Usar map en vez de for

## Lo que no entendi

8. El comentario de usar una interface nueva como ITeamConfiguration (igual dijo que no es requerido)
9. "I recommend encapsulate everything into a TeamConfigurationModel". En ese comment entendi la parte de no llamar al preferredConfig service desde el team controller, pero esa parte que puse no la entendi 
10. "here I suspect we can re-use the TeamConfiguration.GetByTeam (with the suggested changes) and then we can return those values". No entendi a cuales cambios se refiere que sugirio, bah directamente no entendi a cual de todos los metodos se refiere pero quizas lo tengo que releer 