toProductRepo :: (E.Entity RepositoryStatus, E.Entity P.Product) -> ProductRepo
toProductRepo (rsEntity, prodEntity) =
  ProductRepo { getProductId        = Just $ P.toProductID $ prodEntity
              , getProductName      = productName . P.toProduct $ prodEntity
              , getProductRepoUrl   = productRepoUrl . P.toProduct $ prodEntity
              , getProductRepoState = repositoryStatusState . toProductRepoStatus $ rsEntity
              , getProductRepoError = repositoryStatusError . toProductRepoStatus $ rsEntity
              }
toProductRepo :: (E.Entity RepositoryStatus, E.Entity P.Product) -> ProductRepo
toProductRepo (rsEntity, prodEntity) =
  ProductRepo { getProductId        = Just $ P.toProductID $ prodEntity
              , getProductName      = productName . P.toProduct $ prodEntity
              , getProductRepoUrl   = productRepoUrl . P.toProduct $ prodEntity
              , getProductRepoState = repositoryStatusState . toProductRepoStatus $ rsEntity
              , getProductRepoError = repositoryStatusError . toProductRepoStatus $ rsEntity
              }
toProductRepo (rsEntity, prodEntity) =
  ProductRepo { getProductId        = Just $ P.toProductID $ prodEntity
              , getProductName      = productName . P.toProduct $ prodEntity
              , getProductRepoUrl   = productRepoUrl . P.toProduct $ prodEntity
              , getProductRepoState = repositoryStatusState . toProductRepoStatus $ rsEntity
              , getProductRepoError = repositoryStatusError . toProductRepoStatus $ rsEntity
              }