1 package fr.ifremer.tutti.ui.swing.content.referential.actions;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 import fr.ifremer.tutti.persistence.entities.referential.Species;
26 import fr.ifremer.tutti.service.referential.ReferentialImportResult;
27 import fr.ifremer.tutti.service.referential.ReferentialTemporarySpeciesService;
28 import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler;
29
30 import java.io.File;
31
32 import static org.nuiton.i18n.I18n.t;
33
34
35
36
37
38
39
40 public class ImportTemporarySpeciesAction extends ImportTemporaryActionSupport<Species> {
41
42
43 public ImportTemporarySpeciesAction(ManageTemporaryReferentialUIHandler handler) {
44 super(handler);
45 }
46
47 @Override
48 protected File chooseImportFile() {
49
50 return chooseFile(
51 t("tutti.manageTemporaryReferential.title.choose.importTemporarySpeciesFile"),
52 t("tutti.manageTemporaryReferential.action.chooseReferentialSpeciesFile.import"),
53 "^.*\\.csv", t("tutti.common.file.csv"));
54
55 }
56
57 @Override
58 protected ReferentialImportResult<Species> doImport(File file) {
59
60 ReferentialTemporarySpeciesService service = getContext().getReferentialTemporarySpeciesService();
61 return service.importTemporarySpecies(file);
62
63 }
64
65 @Override
66 protected void postSuccessAction(File file, ReferentialImportResult<Species> result) {
67
68 int nbRef = getModel().getNbTemporarySpecies();
69 getModel().setNbTemporarySpecies(nbRef + result.getNbRefAdded() - result.getNbRefDeleted());
70
71
72 getDataContext().resetSpecies();
73 reloadFishingOperation();
74
75 getHandler().resetComboBoxAction(getUI().getSpeciesActionComboBox());
76 String title = t("tutti.manageTemporaryReferential.action.chooseReferentialSpeciesFile.import.dialog.title");
77 String message = t("tutti.manageTemporaryReferential.action.chooseReferentialSpeciesFile.import.dialog.message",
78 result.getNbRefAdded(), result.getNbRefUpdated(), result.getNbRefDeleted());
79 displayInfoMessage(title, message);
80
81 sendMessage(t("tutti.manageTemporaryReferential.action.chooseReferentialSpeciesFile.import.success", file));
82
83 }
84 }