civio / quiencobralaobra

¿Quién cobra la obra?
GNU Affero General Public License v3.0
7 stars 0 forks source link

Listar contratos de cada entidad separando con y sin UTEs #57

Closed rauldiazpoblete closed 7 years ago

rauldiazpoblete commented 7 years ago

Ahora mismo en bidders_controller ofrecemos un listado @contract_awards con todos los contratos de la empresa. Deberemos ofrecer 2 listados distintos: un @contract_awards con los contratos de la empresa y otro @contract_awards_utes con los contratos de las UTEs en las que participa la empresa. De esta manera podremos mostrar en tablas separadas cada listado.

dcabo commented 7 years ago

De cara a la separación entre contratos 'en solitario' y los ganados vía UTEs, siempre comentamos (en #45, por ejemplo) que los contratos de UTEs de un mismo grupo cuentan como 'en solitario'. En realidad esto no supone un esfuerzo adicional de desarrollo, porque el trabajo ya se ha hecho al generar los ficheros maestros 2009-2015 (vía merge_contracts.rb): en esos ficheros maestro una UTE mixta pertenece a un grupo con su mismo nombre (es decir, es un grupo en sí misma; esto es igual a lo que hacemos con empresas normales), mientras que una UTE de empresas de un mismo grupo (ACS, digamos) tiene asignado el grupo matriz (o sea, ACS).

dcabo commented 7 years ago

El commit 0a27925, que añade información de grupo al desglose de UTEs, es necesario porque antes sólo teníamos información de grupo de aquellas empresas que venían en el listado principal, es decir, que tenían algún contrato asignado. Y no todas las que aparecen en UTEs tienen contratos en solitario.

Es un poco feo tener información de grupo en dos modelos (Bidder y UTECompaniesMapping), pero ahora mismo es la solución más sencilla. Al menos sabemos que la información es coherente, porque todo sale del mismo XLS de mapeo de nombres. La alternativa hubiera sido cargar la información de empresas directamente a partir de ese XLS de mapeo, pero parece rebuscado cuando ya la tenemos en el listado de contratos gracias a merge_contracts.

dcabo commented 7 years ago

Está desplegado en producción, yo creo que esto ya está, pero revisadlo a ver.

rauldiazpoblete commented 7 years ago

Yo lo veo perfecto! He hecho alguna mejora en https://github.com/civio/quiencobralaobra/commit/929b870a9e90d30ed7cdf08dd28db128ecdd9eda para ocultar la tabla de UTEs y el selector del treemap si no hay ningún contrato en UTE y creo que con esto podemos cerrar el issue.