Loading config/autoload/global.php +2 −6 Changes for config/autoload/global.php: 2 added lines, 6 removed lines. Original line number Diff line number Diff line Loading @@ -11,6 +11,7 @@ use Portfolio\Service\PublicationSelectProvider; use Retraitement\Filter\Command\RetraitementShellCommandMines; use UnicaenDbImport\Filter\ColumnValue\ArrayToStringColumnValueFilter; use UnicaenDbImport\Filter\ColumnValue\ConcatColumnValueFilter; use UnicaenDbImport\Filter\ColumnValue\SameColumnValueFilter; $config = [ 'api-tools-content-negotiation' => [ Loading Loading @@ -205,6 +206,7 @@ $config = [ 'publisher_s', 'halId_s', 'uri_s', 'individu_hal_id', // ajouté dynamiquement, cf. PublicationSelectProvider ], 'column_name_filter' => [ 'title_s' => 'title_s', Loading @@ -220,12 +222,6 @@ $config = [ ['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' => [ Loading doc/release-notes/fiche_rncp/02_publications.sql +11 −7 Changes for doc/release-notes/fiche_rncp/02_publications.sql: 11 added lines, 7 removed lines. Original line number Diff line number Diff line INSERT INTO source(id, code, libelle, etablissement_id, importable) VALUES (nextval('source_id_seq'), 'PUBLICATIONS_HAL', 'PUBLICATIONS_HAL', null, true) ; -- INSERT INTO source(id, code, libelle, etablissement_id, importable) -- VALUES (nextval('source_id_seq'), 'PUBLICATIONS_HAL', 'PUBLICATIONS_HAL', null, true) ; --Suppression des possibles données existantes concernant l'import des publications drop view if exists v_diff_publication_hal; Loading @@ -12,8 +12,9 @@ create table if not exists public.tmp_publication_hal ( id bigserial, title_s varchar(2048), auth_full_name_s varchar(2048), auth_full_name_s text, auth_id_hal_i varchar(2048), individu_hal_id varchar(264), publication_date_s varchar(264), publisher_s varchar(264), doc_type_s varchar(264), Loading @@ -36,14 +37,15 @@ create index tmp_publication_hal_source_code_index create index tmp_publication_hal_source_id_index on public.tmp_publication_hal (source_id); create unique index tmp_publication_hal_unique_index on public.tmp_publication_hal (source_id, source_code); -- create unique index tmp_publication_hal_unique_index -- on public.tmp_publication_hal (source_id, source_code); --Création de la table publication_hal create table if not exists public.publication_hal ( id bigserial not null primary key, individu_id bigint, title_s varchar(2048), auth_full_name_s varchar(2048), auth_id_hal_i varchar(2048), Loading Loading @@ -91,10 +93,11 @@ create index publication_hal_source_idx --Création de la vue src_publication_hal avec les infos de tmp_publication_hal create or replace view src_publication_hal (id, source_code, source_id, title_s, auth_full_name_s, publication_date_s, doc_type_s, publisher_s, uri_s) as (id, source_code, source_id, title_s, auth_full_name_s, auth_id_hal_i, publication_date_s, doc_type_s, publisher_s, uri_s) as select NULL::bigint AS id, tmp.source_code, tmp.individu_hal_id||'_'||tmp.source_code as source_code, src.id AS source_id, i.id as individu_id, tmp.title_s, tmp.auth_full_name_s, tmp.auth_id_hal_i, Loading @@ -104,4 +107,5 @@ select NULL::bigint AS id, tmp.uri_s FROM tmp_publication_hal tmp JOIN source src ON src.id = tmp.source_id join individu i on i.id_hal = tmp.individu_hal_id ; No newline at end of file module/Portfolio/src/Portfolio/Service/PublicationSelectProvider.php +8 −3 Changes for module/Portfolio/src/Portfolio/Service/PublicationSelectProvider.php: 8 added lines, 3 removed lines. Original line number Diff line number Diff line Loading @@ -12,8 +12,8 @@ class PublicationSelectProvider implements SelectProviderInterface use DoctorantServiceAwareTrait; use IndividuServiceAwareTrait; private string $urlTemplateIdNumeric = '/search/?q=authIdHal_i:%s&wt=json&fl=idHal_s,title_s,authFullName_s,publicationDate_s,halId_s,publisher_s,uri_s,docType_s'; private string $urlTemplateIdString = '/search/?q=authIdHal_s:%s&wt=json&fl=idHal_s,title_s,authFullName_s,publicationDate_s,halId_s,publisher_s,uri_s,docType_s'; private string $urlTemplateIdNumeric = '/search/?q=authIdHal_i:%s&wt=json&fl=idHal_s,title_s,authFullName_s,publicationDate_s,halId_s,authIdHal_i,publisher_s,uri_s,docType_s'; private string $urlTemplateIdString = '/search/?q=authIdHal_s:%s&wt=json&fl=idHal_s,title_s,authFullName_s,publicationDate_s,halId_s,authIdHal_i,publisher_s,uri_s,docType_s'; private ?array $idsHal = null; public function getSelects(): array Loading @@ -27,7 +27,12 @@ class PublicationSelectProvider implements SelectProviderInterface ? $this->urlTemplateIdNumeric : $this->urlTemplateIdString; return sprintf($template, $id); return [ 'url' => sprintf($template, $id), 'columns' => [ 'individu_hal_id' => $id, ], ]; }, $this->idsHal ); Loading Loading
config/autoload/global.php +2 −6 Changes for config/autoload/global.php: 2 added lines, 6 removed lines. Original line number Diff line number Diff line Loading @@ -11,6 +11,7 @@ use Portfolio\Service\PublicationSelectProvider; use Retraitement\Filter\Command\RetraitementShellCommandMines; use UnicaenDbImport\Filter\ColumnValue\ArrayToStringColumnValueFilter; use UnicaenDbImport\Filter\ColumnValue\ConcatColumnValueFilter; use UnicaenDbImport\Filter\ColumnValue\SameColumnValueFilter; $config = [ 'api-tools-content-negotiation' => [ Loading Loading @@ -205,6 +206,7 @@ $config = [ 'publisher_s', 'halId_s', 'uri_s', 'individu_hal_id', // ajouté dynamiquement, cf. PublicationSelectProvider ], 'column_name_filter' => [ 'title_s' => 'title_s', Loading @@ -220,12 +222,6 @@ $config = [ ['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' => [ Loading
doc/release-notes/fiche_rncp/02_publications.sql +11 −7 Changes for doc/release-notes/fiche_rncp/02_publications.sql: 11 added lines, 7 removed lines. Original line number Diff line number Diff line INSERT INTO source(id, code, libelle, etablissement_id, importable) VALUES (nextval('source_id_seq'), 'PUBLICATIONS_HAL', 'PUBLICATIONS_HAL', null, true) ; -- INSERT INTO source(id, code, libelle, etablissement_id, importable) -- VALUES (nextval('source_id_seq'), 'PUBLICATIONS_HAL', 'PUBLICATIONS_HAL', null, true) ; --Suppression des possibles données existantes concernant l'import des publications drop view if exists v_diff_publication_hal; Loading @@ -12,8 +12,9 @@ create table if not exists public.tmp_publication_hal ( id bigserial, title_s varchar(2048), auth_full_name_s varchar(2048), auth_full_name_s text, auth_id_hal_i varchar(2048), individu_hal_id varchar(264), publication_date_s varchar(264), publisher_s varchar(264), doc_type_s varchar(264), Loading @@ -36,14 +37,15 @@ create index tmp_publication_hal_source_code_index create index tmp_publication_hal_source_id_index on public.tmp_publication_hal (source_id); create unique index tmp_publication_hal_unique_index on public.tmp_publication_hal (source_id, source_code); -- create unique index tmp_publication_hal_unique_index -- on public.tmp_publication_hal (source_id, source_code); --Création de la table publication_hal create table if not exists public.publication_hal ( id bigserial not null primary key, individu_id bigint, title_s varchar(2048), auth_full_name_s varchar(2048), auth_id_hal_i varchar(2048), Loading Loading @@ -91,10 +93,11 @@ create index publication_hal_source_idx --Création de la vue src_publication_hal avec les infos de tmp_publication_hal create or replace view src_publication_hal (id, source_code, source_id, title_s, auth_full_name_s, publication_date_s, doc_type_s, publisher_s, uri_s) as (id, source_code, source_id, title_s, auth_full_name_s, auth_id_hal_i, publication_date_s, doc_type_s, publisher_s, uri_s) as select NULL::bigint AS id, tmp.source_code, tmp.individu_hal_id||'_'||tmp.source_code as source_code, src.id AS source_id, i.id as individu_id, tmp.title_s, tmp.auth_full_name_s, tmp.auth_id_hal_i, Loading @@ -104,4 +107,5 @@ select NULL::bigint AS id, tmp.uri_s FROM tmp_publication_hal tmp JOIN source src ON src.id = tmp.source_id join individu i on i.id_hal = tmp.individu_hal_id ; No newline at end of file
module/Portfolio/src/Portfolio/Service/PublicationSelectProvider.php +8 −3 Changes for module/Portfolio/src/Portfolio/Service/PublicationSelectProvider.php: 8 added lines, 3 removed lines. Original line number Diff line number Diff line Loading @@ -12,8 +12,8 @@ class PublicationSelectProvider implements SelectProviderInterface use DoctorantServiceAwareTrait; use IndividuServiceAwareTrait; private string $urlTemplateIdNumeric = '/search/?q=authIdHal_i:%s&wt=json&fl=idHal_s,title_s,authFullName_s,publicationDate_s,halId_s,publisher_s,uri_s,docType_s'; private string $urlTemplateIdString = '/search/?q=authIdHal_s:%s&wt=json&fl=idHal_s,title_s,authFullName_s,publicationDate_s,halId_s,publisher_s,uri_s,docType_s'; private string $urlTemplateIdNumeric = '/search/?q=authIdHal_i:%s&wt=json&fl=idHal_s,title_s,authFullName_s,publicationDate_s,halId_s,authIdHal_i,publisher_s,uri_s,docType_s'; private string $urlTemplateIdString = '/search/?q=authIdHal_s:%s&wt=json&fl=idHal_s,title_s,authFullName_s,publicationDate_s,halId_s,authIdHal_i,publisher_s,uri_s,docType_s'; private ?array $idsHal = null; public function getSelects(): array Loading @@ -27,7 +27,12 @@ class PublicationSelectProvider implements SelectProviderInterface ? $this->urlTemplateIdNumeric : $this->urlTemplateIdString; return sprintf($template, $id); return [ 'url' => sprintf($template, $id), 'columns' => [ 'individu_hal_id' => $id, ], ]; }, $this->idsHal ); Loading