This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See https://gitlab.nuiton.org/codelutin/observe.git commit d3be653452f118feb17e688a8b48824115433fb3 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Nov 2 10:15:06 2016 +0100 Déplacement de SizeMeasureType et WeightMeasureType dans le référentiel commun (persistence) --- .../DataSourceMigrationForVersion_5_1.java | 63 +++++++++++++++++++++ .../resources/db/3.5/traduction_attributes.csv | 2 +- .../V5_1_08_evol_8390_measure_type-H2.sql | 19 +++++++ .../V5_1_08_evol_8390_measure_type-PG.sql | 18 ++++++ entities/src/main/xmi/observe-common.zargo | Bin 37331 -> 37986 bytes entities/src/main/xmi/observe-longline.zargo | Bin 93635 -> 93649 bytes entities/src/main/xmi/observe-seine.zargo | Bin 83500 -> 85633 bytes 7 files changed, 101 insertions(+), 1 deletion(-) diff --git a/entities-migration/src/main/java/fr/ird/observe/entities/migration/versions/DataSourceMigrationForVersion_5_1.java b/entities-migration/src/main/java/fr/ird/observe/entities/migration/versions/DataSourceMigrationForVersion_5_1.java index dbddf29..d3ac6b2 100644 --- a/entities-migration/src/main/java/fr/ird/observe/entities/migration/versions/DataSourceMigrationForVersion_5_1.java +++ b/entities-migration/src/main/java/fr/ird/observe/entities/migration/versions/DataSourceMigrationForVersion_5_1.java @@ -5,8 +5,13 @@ import fr.ird.observe.entities.migration.AbstractObserveMigrationCallBack; import fr.ird.observe.entities.migration.H2DataSourceMigration; import fr.ird.observe.entities.migration.ObserveMigrationConfigurationProviderImpl; import fr.ird.observe.entities.migration.PGDataSourceMigration; +import org.nuiton.topia.persistence.support.TopiaSqlQuery; import org.nuiton.topia.persistence.support.TopiaSqlSupport; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; import java.util.List; /** @@ -34,8 +39,66 @@ public class DataSourceMigrationForVersion_5_1 extends AbstractObserveMigrationC addScript("05", "evol_6999_nonTargetCatch_add_well", queries); addScript("06", "evol_8375_setSeine_add_booleans", queries); addScript("07", "evol_8389_rename_source_columns", queries); + addScript("08", "evol_8390_measure_type", queries); + + { + List<String> oldIds = topiaSqlSupport.findMultipleResult(new TopiaSqlQuery<String>() { + + @Override + public PreparedStatement prepareQuery(Connection connection) throws SQLException { + return connection.prepareStatement("SELECT topiaId FROM observe_longline.sizemeasuretype"); + } + + @Override + public String prepareResult(ResultSet set) throws SQLException { + return set.getString(1); + } + }); + + String newIdPrefix = "fr.ird.observe.entities.referentiel.SizeMeasureType#1#"; + int count = 0; + for (String oldId : oldIds) { + String newId = newIdPrefix + (count++); + queries.add(String.format("UPDATE observe_common.sizeMeasureType SET topiaId = '%s' WHERE topiaId = '%s'", newId, oldId)); + queries.add(String.format("UPDATE observe_longline.sizeMeasure SET sizeMeasureType2 = '%s' WHERE sizeMeasureType = '%s'", newId, oldId)); + queries.add(String.format("UPDATE observe_seine.targetLength SET sizeMeasureType = '%s' WHERE sizeMeasureType = '%s'", newId, oldId)); + } + } + { + List<String> oldIds = topiaSqlSupport.findMultipleResult(new TopiaSqlQuery<String>() { + + @Override + public PreparedStatement prepareQuery(Connection connection) throws SQLException { + return connection.prepareStatement("SELECT topiaId FROM observe_longline.weightmeasuretype"); + } + + @Override + public String prepareResult(ResultSet set) throws SQLException { + return set.getString(1); + } + }); + + String newIdPrefix = "fr.ird.observe.entities.referentiel.WeightMeasureType#1#"; + + int count = 0; + for (String oldId : oldIds) { + String newId = newIdPrefix + (count++); + queries.add(String.format("UPDATE observe_common.weightMeasureType SET topiaId = '%s' WHERE topiaId = '%s'", newId, oldId)); + queries.add(String.format("UPDATE observe_longline.weightMeasure SET weightMeasureType2 = '%s' WHERE weightMeasureType = '%s'", newId, oldId)); + } + } + + queries.add("ALTER TABLE observe_seine.targetLength DROP COLUMN sizeMeasureType"); + queries.add("ALTER TABLE observe_seine.targetLength ALTER COLUMN sizeMeasureType2 RENAME TO sizeMeasureType"); + queries.add("ALTER TABLE observe_seine.targetlength ADD CONSTRAINT fk_targetLength_sizeMeasureType FOREIGN KEY(sizeMeasureType) REFERENCES observe_common.sizeMeasureType(topiaId);"); + queries.add("ALTER TABLE observe_longline.sizeMeasure DROP COLUMN sizeMeasureType"); + queries.add("ALTER TABLE observe_longline.sizeMeasure ALTER COLUMN sizeMeasureType2 RENAME TO sizeMeasureType"); + queries.add("ALTER TABLE observe_longline.sizeMeasure ADD CONSTRAINT fk_sizeMeasure_sizeMeasureType FOREIGN KEY(sizeMeasureType) REFERENCES observe_common.sizeMeasureType(topiaId);"); + queries.add("ALTER TABLE observe_longline.weightMeasure DROP COLUMN weightMeasureType"); + queries.add("ALTER TABLE observe_longline.weightMeasure ALTER COLUMN weightMeasureType2 RENAME TO weightMeasureType"); + queries.add("ALTER TABLE observe_longline.weightMeasure ADD CONSTRAINT fk_weightMeasure_weightMeasureType FOREIGN KEY(weightMeasureType) REFERENCES observe_common.weightMeasureType(topiaId);"); } public static class H2DataSourceMigrationForVersion extends DataSourceMigrationForVersion_5_1 { diff --git a/entities-migration/src/main/resources/db/3.5/traduction_attributes.csv b/entities-migration/src/main/resources/db/3.5/traduction_attributes.csv index fe4ea13..eae07bc 100644 --- a/entities-migration/src/main/resources/db/3.5/traduction_attributes.csv +++ b/entities-migration/src/main/resources/db/3.5/traduction_attributes.csv @@ -94,7 +94,7 @@ poidsMoyen;meanWeight;PROPERTY_POIDS_MOYEN;PROPERTY_MEAN_WEIGHT;; modeSaisie;acquisitionMode;PROPERTY_MODE_SAISIE;PROPERTY_ACQUISITION_MODE;; heureDebut;startTime;PROPERTY_HEURE_DEBUT;PROPERTY_START_TIME;; codeQuille;keelCode;PROPERTY_CODE_QUILLE;PROPERTY_KEEL_CODE;; -codeMesure;measureType;PROPERTY_CODE_MESURE;PROPERTY_MEASURE_TYPE;; +codeMesure;sizeMeasureType;PROPERTY_CODE_MESURE;PROPERTY_MEASURE_TYPE;; codeFlotte;fleetCountry;PROPERTY_CODE_FLOTTE;PROPERTY_FLEET_COUNTRY;; tailleMin;minLength;PROPERTY_TAILLE_MIN;PROPERTY_MIN_LENGTH;; tailleMax;maxLength;PROPERTY_TAILLE_MAX;PROPERTY_MAX_LENGTH;; diff --git a/entities-migration/src/main/resources/db/migration/V5_1_08_evol_8390_measure_type-H2.sql b/entities-migration/src/main/resources/db/migration/V5_1_08_evol_8390_measure_type-H2.sql new file mode 100644 index 0000000..f7987d6 --- /dev/null +++ b/entities-migration/src/main/resources/db/migration/V5_1_08_evol_8390_measure_type-H2.sql @@ -0,0 +1,19 @@ +CREATE TABLE observe_common.SIZEMEASURETYPE( topiaid VARCHAR(255) NOT NULL,topiaversion BIGINT NOT NULL, topiacreatedate DATE, lastupdatedate TIMESTAMP NOT NULL, code VARCHAR(255), status INTEGER DEFAULT 1, needComment BOOLEAN, uri VARCHAR(255), label1 VARCHAR(255), label2 VARCHAR(255), label3 VARCHAR(255), label4 VARCHAR(255), label5 VARCHAR(255), label6 VARCHAR(255), label7 VARCHAR(255), label8 VARCHAR(255)) AS SELECT topiaId, topiaversion, topiacreatedate, lastupdatedate, code, status [...] +ALTER TABLE observe_common.SIZEMEASURETYPE ADD CONSTRAINT PK_SIZEMEASURETYPE PRIMARY KEY(TOPIAID); + +CREATE TABLE observe_common.WEIGHTMEASURETYPE( topiaid VARCHAR(255) NOT NULL,topiaversion BIGINT NOT NULL, topiacreatedate DATE, lastupdatedate TIMESTAMP NOT NULL, code VARCHAR(255), status INTEGER DEFAULT 1, needComment BOOLEAN, uri VARCHAR(255), label1 VARCHAR(255), label2 VARCHAR(255), label3 VARCHAR(255), label4 VARCHAR(255), label5 VARCHAR(255), label6 VARCHAR(255), label7 VARCHAR(255), label8 VARCHAR(255)) AS SELECT topiaId, topiaversion, topiacreatedate, lastupdatedate, code, stat [...] +ALTER TABLE observe_common.WEIGHTMEASURETYPE ADD CONSTRAINT PK_WEIGHTMEASURETYPE PRIMARY KEY(TOPIAID); + +UPDATE observe_common.LASTUPDATEDATE SET TYPE = 'fr.ird.observe.entities.referentiel.SizeMeasureType' WHERE TYPE = 'fr.ird.observe.entities.referentiel.longline.SizeMeasureType'; +UPDATE observe_common.LASTUPDATEDATE SET TYPE = 'fr.ird.observe.entities.referentiel.WeightMeasureType' WHERE TYPE = 'fr.ird.observe.entities.referentiel.longline.WeightMeasureType'; + +ALTER TABLE observe_seine.targetlength ADD COLUMN sizeMeasureType VARCHAR(255); +UPDATE observe_seine.targetlength SET sizeMeasureType = NULL WHERE measureType = 0; +UPDATE observe_seine.targetlength SET sizeMeasureType = (select topiaid from observe_longline.sizemeasuretype where label1 ='PDL') WHERE measureType = 1; +UPDATE observe_seine.targetlength SET sizeMeasureType =(select topiaid from observe_longline.sizemeasuretype where label1='FL') WHERE measureType = 2; +ALTER TABLE observe_seine.targetlength DROP COLUMN measureType; + +ALTER TABLE observe_seine.targetlength ADD COLUMN sizeMeasureType2 VARCHAR(255); +ALTER TABLE observe_longline.sizeMeasure ADD COLUMN sizeMeasureType2 VARCHAR(255); +ALTER TABLE observe_longline.weightMeasure ADD COLUMN weightMeasureType2 VARCHAR(255); + diff --git a/entities-migration/src/main/resources/db/migration/V5_1_08_evol_8390_measure_type-PG.sql b/entities-migration/src/main/resources/db/migration/V5_1_08_evol_8390_measure_type-PG.sql new file mode 100644 index 0000000..edaa004 --- /dev/null +++ b/entities-migration/src/main/resources/db/migration/V5_1_08_evol_8390_measure_type-PG.sql @@ -0,0 +1,18 @@ +CREATE TABLE observe_common.SIZEMEASURETYPE( topiaid character varying(255) NOT NULL,topiaversion BIGINT NOT NULL, topiacreatedate DATE, lastupdatedate TIMESTAMP NOT NULL, code character varying(255), status INTEGER DEFAULT 1, uri character varying(255), label1 character varying(255), label2 character varying(255), label3 character varying(255), label4 character varying(255), label5 character varying(255), label6 character varying(255), label7 character varying(255), label8 character var [...] +ALTER TABLE observe_common.SIZEMEASURETYPE ADD CONSTRAINT PK_SIZEMEASURETYPE PRIMARY KEY(TOPIAID); + +CREATE TABLE observe_common.WEIGHTMEASURETYPE( topiaid character varying(255) NOT NULL,topiaversion BIGINT NOT NULL, topiacreatedate DATE, lastupdatedate TIMESTAMP NOT NULL, code character varying(255), status INTEGER DEFAULT 1, uri character varying(255), label1 character varying(255), label2 character varying(255), label3 character varying(255), label4 character varying(255), label5 character varying(255), label6 character varying(255), label7 character varying(255), label8 character v [...] +ALTER TABLE observe_common.WEIGHTMEASURETYPE ADD CONSTRAINT PK_WEIGHTMEASURETYPE PRIMARY KEY(TOPIAID); + +UPDATE observe_common.LASTUPDATEDATE SET TYPE = 'fr.ird.observe.entities.referentiel.SizeMeasureType' WHERE TYPE = 'fr.ird.observe.entities.referentiel.longline.SizeMeasureType'; +UPDATE observe_common.LASTUPDATEDATE SET TYPE = 'fr.ird.observe.entities.referentiel.WeightMeasureType' WHERE TYPE = 'fr.ird.observe.entities.referentiel.longline.WeightMeasureType'; + +ALTER TABLE observe_seine.targetlength ADD COLUMN sizeMeasureType character varying(255); +UPDATE observe_seine.targetlength SET sizeMeasureType = NULL WHERE measureType = 0; +UPDATE observe_seine.targetlength SET sizeMeasureType = (select topiaid from observe_longline.sizemeasuretype where label1 ='PDL') WHERE measureType = 1; +UPDATE observe_seine.targetlength SET sizeMeasureType =(select topiaid from observe_longline.sizemeasuretype where label1='FL') WHERE measureType = 2; +ALTER TABLE observe_seine.targetlength DROP COLUMN measureType; + +ALTER TABLE observe_seine.targetlength ADD COLUMN sizeMeasureType2 character varying(255); +ALTER TABLE observe_longline.sizeMeasure ADD COLUMN sizeMeasureType2 character varying(255); +ALTER TABLE observe_longline.weightMeasure ADD COLUMN weightMeasureType2 character varying(255); diff --git a/entities/src/main/xmi/observe-common.zargo b/entities/src/main/xmi/observe-common.zargo index 1a0614c..94b7c59 100644 Binary files a/entities/src/main/xmi/observe-common.zargo and b/entities/src/main/xmi/observe-common.zargo differ diff --git a/entities/src/main/xmi/observe-longline.zargo b/entities/src/main/xmi/observe-longline.zargo index 11d0e01..38760b3 100644 Binary files a/entities/src/main/xmi/observe-longline.zargo and b/entities/src/main/xmi/observe-longline.zargo differ diff --git a/entities/src/main/xmi/observe-seine.zargo b/entities/src/main/xmi/observe-seine.zargo index a341754..da602d4 100644 Binary files a/entities/src/main/xmi/observe-seine.zargo and b/entities/src/main/xmi/observe-seine.zargo differ -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.