From 978cba822972beb9c2af162be5053089ec900bda Mon Sep 17 00:00:00 2001 From: gexce Date: Thu, 26 Oct 2017 17:14:51 +0200 Subject: [PATCH] close to run --- ...tegories_131017_EDITED_without_archive.csv | 10 +-- ...egories_131017_EDITED_without_archive.xlsx | Bin 33371 -> 34722 bytes .../com/bayer/edam/migration/Definitions.java | 39 +++++++---- .../edam/migration/MamMigrationSelective.java | 61 +++++++++++------- 4 files changed, 70 insertions(+), 40 deletions(-) diff --git a/AH MAM Migration/resources/Media_Assistant_Categories_131017_EDITED_without_archive.csv b/AH MAM Migration/resources/Media_Assistant_Categories_131017_EDITED_without_archive.csv index ca113aa..97a1166 100644 --- a/AH MAM Migration/resources/Media_Assistant_Categories_131017_EDITED_without_archive.csv +++ b/AH MAM Migration/resources/Media_Assistant_Categories_131017_EDITED_without_archive.csv @@ -219,7 +219,7 @@ skip;BusinessUnit.General,Brand.General,MediaType.Guideline;;;Guidelines;;;;;; skip;;;;;AH Meeting Culture;;;;; skip;;;;;Agency Briefing Templates;;;;; skip;;;;;BAH eDetailer Template;;;;; -classify;BusinessUnit.CAP;;;;CAP Brand/Packaging Design;;;;;kann eine Guideline in Brand.General, aber in BusinessUnit CAP sein? +skip;BusinessUnit.CAP;;;;CAP Brand/Packaging Design;;;;;kann eine Guideline in Brand.General, aber in BusinessUnit CAP sein? campaign;(2009-2017);;;;;Advantage Family;;;; campaign;(2003-2012);;;;;Bolfo/Bayopet (OTC);;;; campaign;(2012-2017);;;;;Drontal Product Family;;;; @@ -228,12 +228,12 @@ campaign;(2005);;;;;Kiltix Products;;;; campaign;(2017);;;;;Lifestyle Photography 2017;;;; campaign;(2009-2012);;;;;Profender Products;;;; campaign;(2011-2017);;;;;Seresto Packaging;;;; -classify;BusinessUnit.FAP;;;;FAP Brand/Packaging Design;;;;; +skip;BusinessUnit.FAP;;;;FAP Brand/Packaging Design;;;;; campaign;(2011);;;;;Farm Animal Products;;;; campaign;(2006);;;;;Farmhygiene Products;;;; skip;;;;;Global Exhibit Design Manual;;;;; not migrated;;;;;Training Tools - MediaAssistant;;;;; -classify;BusinessUnit.General;;;Images;;;kommt komplett in Space General;;;Nach Motives-Baum unter Images +classify;BusinessUnit.General,Brand.General;;;Images;;;kommt komplett in Space General;;;Nach Motives-Baum unter Images motives;;;;;Applications;;;;; motives;;;;;Different animals together;;;;; motives;;;;;Disease Symptoms;;;;; @@ -283,7 +283,7 @@ motives;;;;;;Zoo and other animals;;;; motives;;;;;Worms (Helminths);;;;; motives;;;;;;Roundworms;;;; motives;;;;;;Tapeworms;;;; -skip;;;;Logos;;;;;;bitte den Brands zuordnen +not migrated;;;;Logos;;;;;;bitte den Brands zuordnen skip;;;;Packshots;;;;;; classify;BusinessUnit.CAP,Brand.Advantage;;;;Advantage;;;;; classify;BusinessUnit.CAP,Brand.Advantix;;;;Advantix;;;;; @@ -341,7 +341,7 @@ brand;;;;;;Seresto;;;; not migrated;;;BAH Image series;;;;;;;wird nicht migriert skip;;;;Image series 1;;;;;; skip;;;;Image series 2;;;;;; -classify;Status.Archived;;BAH Internal Videos;;"alle ins Archiv -> unter classification ""interne Videos""";;;;; +not migrated;Status.Archived;;BAH Internal Videos;;"alle ins Archiv -> unter classification ""interne Videos""";;;;;BusinessUnit? Brand? not migrated;;;BAH Webshop;;;;;;;wird nicht migriert skip;;;;Advantage;;;;;; skip;;;;Advantix;;;;;; diff --git a/AH MAM Migration/resources/Media_Assistant_Categories_131017_EDITED_without_archive.xlsx b/AH MAM Migration/resources/Media_Assistant_Categories_131017_EDITED_without_archive.xlsx index 920184a337a8b4efd197b30d55cc40fb2360e885..141be271d0e6ebd15a57340e28b742ebd383dc34 100644 GIT binary patch delta 26004 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 delta 24618 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 diff --git a/AH MAM Migration/src/com/bayer/edam/migration/Definitions.java b/AH MAM Migration/src/com/bayer/edam/migration/Definitions.java index 24986b2..5bcc959 100644 --- a/AH MAM Migration/src/com/bayer/edam/migration/Definitions.java +++ b/AH MAM Migration/src/com/bayer/edam/migration/Definitions.java @@ -15,6 +15,7 @@ public class Definitions { public static final Map classificationGuidToKeyMap; public static final Map fieldIDs; public static final Map mediaTypes; + public static final Map users; public static final String defaultLanguage = "c2bd4f9bbb954bcb80c31e924c9c26dc"; //"00000000000000000000000000000000"; public static final String defaultProjectLead = "21cfce6116484269a351a71300e1fed0"; @@ -46,6 +47,7 @@ public class Definitions { // /Bayer/Animal Health/Brands classifications.put("Brand.General", new WriteClassification("92b4b27a09f2487dbba6a70f00f7baa3", 1)); + // CAP classifications.put("Brand.Advantage", new WriteClassification("b3f04996de1644df9d08a6dd00cff70e", 1)); classifications.put("Brand.Advantix", new WriteClassification("dc758de7d91e44d6a768a6dd00cff7ad", 1)); classifications.put("Brand.Advocate", new WriteClassification("c7979fc30bb843e486bba6dd00cff835", 1)); @@ -62,6 +64,7 @@ public class Definitions { classifications.put("Brand.miscellaneous", new WriteClassification("bc9d93616c0548f99f7fa6dd00cff69d", 1)); classifications.put("Brand.Miscellaneous", new WriteClassification("bc9d93616c0548f99f7fa6dd00cff69d", 1)); + // FAP classifications.put("Brand.Baycox", new WriteClassification("ef3028f6ba8744508035a6dd00cffe45", 1)); classifications.put("Brand.Bayticol", new WriteClassification("bd1819c976e643bf916ba6dd00cffec4", 1)); classifications.put("Brand.Baytril", new WriteClassification("1053978a142742ad8033a6dd00cfff42", 1)); @@ -76,6 +79,7 @@ public class Definitions { classifications.put("Brand.Zelnate", new WriteClassification("b3887552c9554d6991e4a6dd00d006ee", 1)); classifications.put("Brand.FAP.Others", new WriteClassification("ac169c77ab944a03bfada70f00f7ac43", 1)); + // Media Types classifications.put("MediaType.Other", new WriteClassification("7c13e620-7eb0-4c12-9dfb-a7b4008f19b1", 1)); classifications.put("MediaType.Banner", new WriteClassification("eb786339a5de44679ff6a7b4008f1ee0", 1)); classifications.put("MediaType.Book", new WriteClassification("25a59832a6f84cb0a477a73100a2a091", 1)); @@ -104,6 +108,20 @@ public class Definitions { classificationGuidToKeyMap.put(entry.getValue().id, entry.getKey()); } + // Fields + fieldIDs = new HashMap(); + fieldIDs.put("byr_Title", "31f337fa-add6-4e25-a672-a68a00d4ff3b"); + fieldIDs.put("byr_ah_approvalNumber", "69d65b63-613b-49d6-bc11-a731010bbec8"); + fieldIDs.put("byr_ah_description", "f9e40f87-493e-4f17-b129-a6dd00d063b2"); // Additional Information + fieldIDs.put("byr_ah_projectLead", "5400d446-9d95-4158-ac06-a6dd00d06a12"); + fieldIDs.put("byr_ah_brandCommunicationRepresentative", "5b34f2db-efff-48fd-bc7f-a731010bbda1"); + fieldIDs.put("byr_creationDate", "403fea1c-c154-4e3b-a941-a68a00d4fcc3"); + fieldIDs.put("byr_ah_keywords_tl", "6d582cfaa5b94101ab1fa6fd007e2fcd"); + fieldIDs.put("byr_ah_licenseHolderList", "de3f83cb50e747228bfea731010bc27c"); + fieldIDs.put("byr_ah_licenseAdditionalPermittedUse", "5c9d43a0-bf70-4fb5-8ad4-a731010bc1ef"); + fieldIDs.put("byr_ah_licenseComments", "dd4b899f-10b7-45db-a530-a6dd00d0630a"); + + // Media Type mappings mediaTypes = new HashMap(); mediaTypes.put(1L, "MediaType.unassigned"); mediaTypes.put(2L, "MediaType.Image"); @@ -138,18 +156,15 @@ public class Definitions { mediaTypes.put(32L, "MediaType.Booth"); mediaTypes.put(34L, "MediaType.Folder"); - // Fields - fieldIDs = new HashMap(); - fieldIDs.put("byr_Title", "31f337fa-add6-4e25-a672-a68a00d4ff3b"); - fieldIDs.put("byr_ah_approvalNumber", "69d65b63-613b-49d6-bc11-a731010bbec8"); - fieldIDs.put("byr_ah_description", "f9e40f87-493e-4f17-b129-a6dd00d063b2"); // Additional Information - fieldIDs.put("byr_ah_projectLead", "5400d446-9d95-4158-ac06-a6dd00d06a12"); - fieldIDs.put("byr_ah_brandCommunicationRepresentative", "5b34f2db-efff-48fd-bc7f-a731010bbda1"); - fieldIDs.put("byr_creationDate", "403fea1c-c154-4e3b-a941-a68a00d4fcc3"); - fieldIDs.put("byr_ah_keywords_tl", "6d582cfaa5b94101ab1fa6fd007e2fcd"); - fieldIDs.put("byr_ah_licenseHolderList", "de3f83cb50e747228bfea731010bc27c"); - fieldIDs.put("byr_ah_licenseAdditionalPermittedUse", "5c9d43a0-bf70-4fb5-8ad4-a731010bc1ef"); - fieldIDs.put("byr_ah_licenseComments", "dd4b899f-10b7-45db-a530-a6dd00d0630a"); + users = new HashMap(); + users.put("32300", "02bee145-2a37-4f49-acba-a74600bda888"); // marion.schmidtmeier@bayer.com + users.put("32421", "c68e1a72-f218-48f0-ac4d-a72900796cc1"); // claudia.staubes-dunkel@bayer.com + users.put("32422", "ef573ad7-aa7f-44cd-9c5f-a743007ecfb6"); // roswitha.wolff@bayer.com + users.put("32820", "c24a1e1d-63f7-4713-886c-a7450091a7ed"); // ulrike.kopp@bayer.com + users.put("32960", "e5fd6e3b-5650-4dea-b8e7-a743007ecef1"); // susanne.sikorra@bayer.com + users.put("33160", "8ce7cc2a-134c-4c65-8e35-a7430089851a"); // nikolaus.brunner@bayer.com + users.put("33180", "9e40bd5c-70a9-41e1-8877-a74300744e8b"); // christian.stilez@bayer.com + } public static Field createSingleValueField(String name, String value) { diff --git a/AH MAM Migration/src/com/bayer/edam/migration/MamMigrationSelective.java b/AH MAM Migration/src/com/bayer/edam/migration/MamMigrationSelective.java index 016a06c..dec26fc 100644 --- a/AH MAM Migration/src/com/bayer/edam/migration/MamMigrationSelective.java +++ b/AH MAM Migration/src/com/bayer/edam/migration/MamMigrationSelective.java @@ -123,8 +123,8 @@ public class MamMigrationSelective implements CommandLineRunner { // XXX - if (id > 80000 || id < 72048) - continue; +// if (id > 80000 || id < 72009) //72048 +// continue; @@ -163,6 +163,7 @@ public class MamMigrationSelective implements CommandLineRunner { void postToAdam(Entry entry) throws Exception { UploadRecord record = new UploadRecord(); String entryJson = jsonMapper.writeValueAsString(entry); + Set keywords = new HashSet(); // globally applicable classifications record.addClassification("MediaAssistant-Migration"); @@ -174,7 +175,8 @@ public class MamMigrationSelective implements CommandLineRunner { record.addClassification(Definitions.mediaTypes.get(entry.mediaType.id)); // process categories - Set keywords = new HashSet(); + if (entry.categories.size() > 1) + log.warn("Entry " + entry.id + " has " + entry.categories.size() + " categories assigned"); for (int categoryId : entry.categories) { log.debug("Category: " + categoryId); @@ -209,7 +211,8 @@ public class MamMigrationSelective implements CommandLineRunner { if (p.startsWith("Status.")) { if (!p.equals("Status.Released")) record.removeClassification("Status.Released"); - else if (record.hasClassificationStartingWith("Status.")){ + else if (record.hasClassificationStartingWith("Status.Draft") + || record.hasClassificationStartingWith("Status.Archived")) { log.warn("Classification Status.Released not added, different status already set"); continue; } @@ -222,7 +225,6 @@ public class MamMigrationSelective implements CommandLineRunner { } if (p.startsWith("Brand.")) { - // always use the most specific brand if (p.equals("Brand.General") && record.hasClassificationStartingWith("Brand.")) { log.warn("Classification Brand.General not added, different brand already set"); continue; @@ -285,7 +287,7 @@ public class MamMigrationSelective implements CommandLineRunner { String campaignGuid = null; for (Campaign c : campaigns) { if (c.name.equals(campaignName)) { - log.debug("Found already existing campaign '" + campaignName + "' with guid " + campaignGuid); + log.debug("Add existing campaign " + campaignName); campaignGuid = c.guid; record.addClassification(new WriteClassification(campaignGuid, 1)); } @@ -329,9 +331,23 @@ public class MamMigrationSelective implements CommandLineRunner { record.addField("byr_Title", "No title"); } - // TODO - record.addField("byr_ah_projectLead", Collections.singletonList(Definitions.defaultProjectLead)); - record.addField("byr_ah_brandCommunicationRepresentative", Collections.singletonList(Definitions.defaultProjectLead)); + // Project lead + if (entry.user != null && entry.user.get("id") != null) { + if (Definitions.users.get(entry.user.get("id")) != null) { + record.addField("byr_ah_projectLead", Collections.singletonList(Definitions.users.get(entry.user.get("id")))); + record.addField("byr_ah_brandCommunicationRepresentative", Collections.singletonList(Definitions.users.get(entry.user.get("id")))); + } + else { + log.warn("Entry " + entry.id + ": MAM user " + entry.user.get("id") + " not available, assigning default user"); + record.addField("byr_ah_projectLead", Collections.singletonList(Definitions.defaultProjectLead)); + record.addField("byr_ah_brandCommunicationRepresentative", Collections.singletonList(Definitions.defaultProjectLead)); + } + } + else { + log.warn("Entry " + entry.id + ": No user, assigning default user"); + record.addField("byr_ah_projectLead", Collections.singletonList(Definitions.defaultProjectLead)); + record.addField("byr_ah_brandCommunicationRepresentative", Collections.singletonList(Definitions.defaultProjectLead)); + } // Description / Additional Information String description = entry.description.get("en"); @@ -381,21 +397,20 @@ public class MamMigrationSelective implements CommandLineRunner { if (entry.gpc != null) record.addField("byr_ah_approvalNumber",entry.gpc.gpcNumber); - // XXX // Create record -// HttpEntity httpEntity = new HttpEntity(record, adamHeaders); -// try { -// URI location = restTemplate.postForLocation(adamHost + "/records", httpEntity, UploadRecord.class); -// log.info("RESULT Entry " + entry.id + " migrated to record " + location); -// -// FileUtils.writeStringToFile(entryLog, location.toString() + fieldSeparator + entryJson + lineSeparator, -// Charset.forName("utf-8"), true); -// } -// catch (HttpStatusCodeException hsce) { -// log.error("RESULT Skipping entry " + entry.id + ": Error while creating record " + hsce.getStatusCode().toString()); -// log.error(hsce.getResponseBodyAsString()); -// FileUtils.writeStringToFile(problemLog, entry.id + fieldSeparator + entryJson + lineSeparator, Charset.forName("utf-8"), true); -// } + HttpEntity httpEntity = new HttpEntity(record, adamHeaders); + try { + URI location = restTemplate.postForLocation(adamHost + "/records", httpEntity, UploadRecord.class); + log.info("RESULT Entry " + entry.id + " migrated to record " + location); + + FileUtils.writeStringToFile(entryLog, location.toString() + fieldSeparator + entryJson + lineSeparator, + Charset.forName("utf-8"), true); + } + catch (HttpStatusCodeException hsce) { + log.error("RESULT Skipping entry " + entry.id + ": Error while creating record " + hsce.getStatusCode().toString()); + log.error(hsce.getResponseBodyAsString()); + FileUtils.writeStringToFile(problemLog, entry.id + fieldSeparator + entryJson + lineSeparator, Charset.forName("utf-8"), true); + } } private void readEntryIDsFromFile() throws IOException {