Commit 2db19446 authored by Thomas Hamel's avatar Thomas Hamel
Browse files

WIP

parent 5b1fa8c4
Loading
Loading
Loading
Loading
+19 −4
Changes for config/autoload/global.php: 19 added lines, 4 removed lines.
Original line number Diff line number Diff line
@@ -6,10 +6,11 @@ use Application\Entity\Db\Source;
use Application\Navigation\NavigationFactoryFactory;
use Import\Model\ImportObserv;
use Import\Model\ImportObservResult;
use Portfolio\Service\PublicationSelectGenerator;
use Portfolio\Import\Extractor\HalResponseDataExtractor;
use Portfolio\Service\PublicationSelectProvider;
use Retraitement\Filter\Command\RetraitementShellCommandMines;
use UnicaenDbImport\Filter\ColumnValue\ArrayToStringColumnValueFilter;
use UnicaenDbImport\Service\Api\Response\DataExtractor\Solr\SolrResponseDataExtractor;
use UnicaenDbImport\Filter\ColumnValue\ConcatColumnValueFilter;

$config = [
    'api-tools-content-negotiation' => [
@@ -192,12 +193,13 @@ $config = [
                'source' => [
                    'name' => 'PUBLICATIONS_HAL',
                    'connection' => 'api-archives-ouvertes',
                    'select' => PublicationSelectGenerator::class,
                    'select' => PublicationSelectProvider::class,
                    'code' => 'PUBLICATIONS_HAL',
                    'data_extractor' => SolrResponseDataExtractor::class,
                    'data_extractor' => HalResponseDataExtractor::class,
                    'columns' => [
                        'title_s',
                        'authFullName_s',
                        'authIdHal_i',
                        'publicationDate_s',
                        'docType_s',
                        'publisher_s',
@@ -205,12 +207,25 @@ $config = [
                        'uri_s',
                    ],
                    'column_name_filter' => [
                        'title_s' => 'title_s',
                        'authFullName_s' => 'auth_full_name_s',
                        'authIdHal_i' => 'auth_id_hal_i',
                        'publicationDate_s' => 'publication_date_s',
                        'docType_s' => 'doc_type_s',
                        'publisher_s' => 'publisher_s',
                        'halId_s' => 'source_code',
                    ],
                    'column_value_filter' => [
                        ['name' => ArrayToStringColumnValueFilter::class, 'params' => ['column' => 'authFullName_s']],
                        ['name' => ArrayToStringColumnValueFilter::class, 'params' => ['column' => 'authIdHal_i']],
                        ['name' => ArrayToStringColumnValueFilter::class, 'params' => ['column' => 'title_s']],
                        ['name' => ArrayToStringColumnValueFilter::class, 'params' => ['column' => 'publisher_s']],
                        ['name' => ConcatColumnValueFilter::class, 'params' => [
                            'column' => 'source_code', // colonne à transformer
                            'columns' => ['authIdHal_i', 'halId_s'], // colonnes dont les valeurs seront concaténées
                            'separator' => '::',
                            ]
                        ],
                    ],
                    'source_code_column' => 'source_code',
                    'request_options' => [
+8 −12
Changes for doc/release-notes/fiche_rncp/02_publications.sql: 8 added lines, 12 removed lines.
Original line number Diff line number Diff line
@@ -12,8 +12,9 @@ create table if not exists public.tmp_publication_hal
(
    id                    bigserial,
    title_s               varchar(2048),
    auth_full_name_s        varchar(264),
    publication_date_s     timestamp,
    auth_full_name_s        varchar(2048),
    auth_id_hal_i        varchar(2048),
    publication_date_s     varchar(264),
    publisher_s           varchar(264),
    doc_type_s             varchar(264),
    uri_s             text,
@@ -30,7 +31,7 @@ create table if not exists public.tmp_publication_hal
    );

create index tmp_publication_hal_source_code_index
    on public.tmp_publication (source_code);
    on public.tmp_publication_hal (source_code);

create index tmp_publication_hal_source_id_index
    on public.tmp_publication_hal (source_id);
@@ -44,8 +45,9 @@ create table if not exists public.publication_hal
    id                    bigserial                                                    not null
    primary key,
    title_s               varchar(2048),
    auth_full_name_s        varchar(264),
    publication_date_s     timestamp,
    auth_full_name_s        varchar(2048),
    auth_id_hal_i        varchar(2048),
    publication_date_s     varchar(264),
    publisher_s           varchar(264),
    doc_type_s           varchar(264),
    uri_s             text,
@@ -95,6 +97,7 @@ select NULL::bigint AS id,
       src.id                                                       AS source_id,
       tmp.title_s,
       tmp.auth_full_name_s,
       tmp.auth_id_hal_i,
       tmp.publication_date_s,
       tmp.doc_type_s,
       tmp.publisher_s,
@@ -102,10 +105,3 @@ select NULL::bigint AS id,
FROM tmp_publication_hal tmp
         JOIN source src ON src.id = tmp.source_id
;
 No newline at end of file

// a voir !!!!!! si on associe un individu ou un doctorant à une publication
CREATE TABLE IF NOT EXISTS public.publication_hal_doctorant
(
    individu_id   bigint NOT NULL,
    publication_hal_id bigint NOT NULL
);
 No newline at end of file
+6 −6
Changes for module/Portfolio/config/module.config.php: 6 added lines, 6 removed lines.
Original line number Diff line number Diff line
@@ -13,10 +13,10 @@ use Portfolio\Facade\PortfolioFacadeFactory;
use Portfolio\Provider\Privilege\PortfolioPrivileges;
use Portfolio\Service\Exporter\PortfolioExporter;
use Portfolio\Service\Exporter\PortfolioExporterFactory;
use Portfolio\Service\GeneratoredSelectGenerator;
use Portfolio\Service\PublicationSelectGenerator;
use Portfolio\Service\GeneratoredSelectProvider;
use Portfolio\Service\PublicationSelectProvider;
use Portfolio\Service\PublicationSelectGeneratorFactory;
use Portfolio\Service\IteratorSelectGenerator;
use Portfolio\Service\IteratorSelectProvider;
use UnicaenPrivilege\Guard\PrivilegeController;
use UnicaenPrivilege\Provider\Rule\PrivilegeRuleProvider;

@@ -145,10 +145,10 @@ return [

            PortfolioExporter::class => PortfolioExporterFactory::class,

            PublicationSelectGenerator::class => PublicationSelectGeneratorFactory::class,
            PublicationSelectProvider::class => PublicationSelectGeneratorFactory::class,
            // todo supprimer après tests :
            IteratorSelectGenerator::class => InvokableFactory::class,
            GeneratoredSelectGenerator::class => InvokableFactory::class,
            IteratorSelectProvider::class => InvokableFactory::class,
            GeneratoredSelectProvider::class => InvokableFactory::class,
        ],
    ],
    'view_manager' => [
+2 −2
Changes for module/Portfolio/config/others/publication.config.php: 2 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -3,7 +3,7 @@ namespace Portfolio;

use Laminas\ServiceManager\Factory\InvokableFactory;
use Portfolio\Import\Extractor\HalResponseDataExtractor;
use Portfolio\Service\PublicationSelectGenerator;
use Portfolio\Service\PublicationSelectProvider;
use Portfolio\Service\PublicationSelectGeneratorFactory;
use UnicaenPrivilege\Guard\PrivilegeController;
use UnicaenPrivilege\Provider\Rule\PrivilegeRuleProvider;
@@ -51,7 +51,7 @@ return [
    ],
    'service_manager' => [
        'factories' => [
            PublicationSelectGenerator::class => PublicationSelectGeneratorFactory::class,
            PublicationSelectProvider::class => PublicationSelectGeneratorFactory::class,

            HalResponseDataExtractor::class => InvokableFactory::class,
        ],
+2 −1
Changes for module/Portfolio/src/Portfolio/Entity/Db/Mapping/Application.Entity.Db.Publication.dcm.xml: 2 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -8,7 +8,8 @@
        </id>
        <field name="title" type="string" column="title_s"/>
        <field name="authFullName" type="string" column="auth_full_name_s"/>
        <field name="publicationDate" type="datetime" column="publication_date_s"/>
        <field name="authIdHal_i" type="string" column="auth_full_name_s"/>
        <field name="publicationDate" type="string" column="publication_date_s"/>
        <field name="publisher" type="string" column="publisher_s"/>
        <field name="halId" type="string" column="halId_s"/>
        <field name="uri" type="string" column="uri_s"/>
Loading