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.Person;
26 import fr.ifremer.tutti.service.referential.ReferentialImportResult;
27 import fr.ifremer.tutti.service.referential.ReferentialTemporaryPersonService;
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 ImportTemporaryPersonAction extends ImportTemporaryActionSupport<Person> {
41
42 public ImportTemporaryPersonAction(ManageTemporaryReferentialUIHandler handler) {
43 super(handler);
44 }
45
46 @Override
47 protected File chooseImportFile() {
48
49 return chooseFile(
50 t("tutti.manageTemporaryReferential.title.choose.importTemporaryPersonFile"),
51 t("tutti.manageTemporaryReferential.action.chooseReferentialPersonFile.import"),
52 "^.*\\.csv", t("tutti.common.file.csv"));
53
54 }
55
56 @Override
57 protected ReferentialImportResult<Person> doImport(File file) {
58
59 ReferentialTemporaryPersonService service = getContext().getReferentialTemporaryPersonService();
60 return service.importTemporaryPerson(file);
61
62 }
63
64 @Override
65 public void postSuccessAction(File file, ReferentialImportResult<Person> result) {
66
67 int nbRef = getModel().getNbTemporaryPersons();
68 getModel().setNbTemporaryPersons(nbRef + result.getNbRefAdded() - result.getNbRefDeleted());
69
70
71 getDataContext().resetPersons();
72 reloadCruise();
73 reloadFishingOperation();
74
75 getHandler().resetComboBoxAction(getUI().getPersonActionComboBox());
76
77 String title = t("tutti.manageTemporaryReferential.action.chooseReferentialPersonFile.import.dialog.title");
78 String message = t("tutti.manageTemporaryReferential.action.chooseReferentialPersonFile.import.dialog.message",
79 result.getNbRefAdded(), result.getNbRefUpdated(), result.getNbRefDeleted());
80 displayInfoMessage(title, message);
81
82 sendMessage(t("tutti.manageTemporaryReferential.action.chooseReferentialPersonFile.import.success", file));
83
84 }
85
86 }