From a701f0937f5ab49f81b5238d37dfceab5c86f6f7 Mon Sep 17 00:00:00 2001
From: Damien <damien.burel@maarch.org>
Date: Tue, 11 Feb 2020 17:16:52 +0100
Subject: [PATCH] FEAT #12795 TIME 0:20 Migration numeric package service

---
 migration/20.03/2003.sql                             | 8 ++++++++
 modules/sendmail/xml/menu.xml                        | 2 +-
 sql/data_en.sql                                      | 4 ++--
 sql/data_fr.sql                                      | 4 ++--
 sql/m2m_contacts_samples.sql                         | 2 +-
 src/frontend/app/save-numeric-package.component.html | 4 ++--
 src/frontend/lang/lang-en.ts                         | 2 +-
 src/frontend/lang/lang-fr.ts                         | 2 +-
 src/frontend/lang/lang-nl.ts                         | 2 +-
 src/frontend/service/privileges.service.ts           | 6 +++---
 10 files changed, 22 insertions(+), 14 deletions(-)

diff --git a/migration/20.03/2003.sql b/migration/20.03/2003.sql
index e39a11862bb..14e386f7068 100644
--- a/migration/20.03/2003.sql
+++ b/migration/20.03/2003.sql
@@ -564,6 +564,14 @@ DELETE FROM usergroups_services WHERE service_id = 'param_templates_doctypes';
 DELETE FROM usergroups_services WHERE service_id = 'doctype_template_use';
 DELETE FROM usergroups_services WHERE service_id = 'search_contacts';
 DELETE FROM usergroups_services WHERE service_id = 'use_date_in_signBlock';
+UPDATE usergroups_services SET service_id = 'manage_numeric_package' WHERE service_id = 'save_numeric_package';
+INSERT INTO usergroups_services (group_id, service_id)
+SELECT distinct(group_id), 'manage_numeric_package'
+FROM usergroups_services WHERE group_id IN (
+    SELECT group_id FROM usergroups_services
+    WHERE service_id = 'use_mail_services' AND group_id not in (SELECT group_id FROM usergroups_services WHERE service_id = 'manage_numeric_package')
+);
+
 
 INSERT INTO usergroups_services (group_id, service_id)
 SELECT distinct(group_id), 'update_diffusion_indexing'
diff --git a/modules/sendmail/xml/menu.xml b/modules/sendmail/xml/menu.xml
index b3b496072bd..3fd11907b2d 100755
--- a/modules/sendmail/xml/menu.xml
+++ b/modules/sendmail/xml/menu.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <ROOT>
     <MENU>
-        <id>save_numeric_package</id>
+        <id>manage_numeric_package</id>
         <libconst>_SAVE_NUMERIC_PACKAGE</libconst>
         <url>/saveNumericPackage</url>
         <style>fa fa-file-archive</style>
diff --git a/sql/data_en.sql b/sql/data_en.sql
index 0d03c1ea906..e698292a5a6 100644
--- a/sql/data_en.sql
+++ b/sql/data_en.sql
@@ -69,7 +69,7 @@ INSERT INTO usergroups_services (group_id, service_id) VALUES ('COURRIER', 'priv
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('COURRIER', 'tag_view');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('COURRIER', '_print_sep');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('COURRIER', 'physical_archive_print_sep_mlb');
-INSERT INTO usergroups_services (group_id, service_id) VALUES ('COURRIER', 'save_numeric_package');
+INSERT INTO usergroups_services (group_id, service_id) VALUES ('COURRIER', 'manage_numeric_package');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('AGENT', 'adv_search_mlb');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('AGENT', 'search_contacts');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('AGENT', 'my_contacts');
@@ -214,7 +214,7 @@ INSERT INTO usergroups_services (group_id, service_id) VALUES ('ARCHIVISTE', 'vi
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('ARCHIVISTE', 'sendmail');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('ARCHIVISTE', 'avis_documents');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('ARCHIVISTE', 'tag_view');
-INSERT INTO usergroups_services (group_id, service_id) VALUES ('MAARCHTOGEC', 'save_numeric_package');
+INSERT INTO usergroups_services (group_id, service_id) VALUES ('MAARCHTOGEC', 'manage_numeric_package');
 
 -- Create DOCTYPES
 TRUNCATE TABLE DOCTYPES_FIRST_LEVEL;
diff --git a/sql/data_fr.sql b/sql/data_fr.sql
index 5ed54fc742d..5540f05e9f2 100755
--- a/sql/data_fr.sql
+++ b/sql/data_fr.sql
@@ -73,7 +73,7 @@ INSERT INTO usergroups_services (group_id, service_id) VALUES ('COURRIER', 'priv
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('COURRIER', 'tag_view');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('COURRIER', '_print_sep');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('COURRIER', 'physical_archive_print_sep_mlb');
-INSERT INTO usergroups_services (group_id, service_id) VALUES ('COURRIER', 'save_numeric_package');
+INSERT INTO usergroups_services (group_id, service_id) VALUES ('COURRIER', 'manage_numeric_package');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('AGENT', 'adv_search_mlb');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('AGENT', 'update_contacts');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('AGENT', 'create_contacts');
@@ -223,7 +223,7 @@ INSERT INTO usergroups_services (group_id, service_id) VALUES ('ARCHIVISTE', 'vi
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('ARCHIVISTE', 'sendmail');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('ARCHIVISTE', 'avis_documents');
 INSERT INTO usergroups_services (group_id, service_id) VALUES ('ARCHIVISTE', 'tag_view');
-INSERT INTO usergroups_services (group_id, service_id) VALUES ('MAARCHTOGEC', 'save_numeric_package');
+INSERT INTO usergroups_services (group_id, service_id) VALUES ('MAARCHTOGEC', 'manage_numeric_package');
 
 -- Create DOCTYPES
 TRUNCATE TABLE DOCTYPES_FIRST_LEVEL;
diff --git a/sql/m2m_contacts_samples.sql b/sql/m2m_contacts_samples.sql
index 868449e497e..d0b52f6bc70 100644
--- a/sql/m2m_contacts_samples.sql
+++ b/sql/m2m_contacts_samples.sql
@@ -1,7 +1,7 @@
 DELETE FROM usergroups WHERE group_id = 'MAARCHTOGEC';
 INSERT INTO usergroups (group_id,group_desc,enabled) VALUES ('MAARCHTOGEC', 'Envoi dématérialisé','Y');
 DELETE FROM usergroups_services WHERE group_id = 'MAARCHTOGEC';
-INSERT INTO usergroups_services (group_id, service_id) VALUES ('MAARCHTOGEC', 'save_numeric_package');
+INSERT INTO usergroups_services (group_id, service_id) VALUES ('MAARCHTOGEC', 'manage_numeric_package');
 
 DELETE FROM security WHERE group_id = 'MAARCHTOGEC';
 INSERT INTO security (group_id, coll_id, where_clause, maarch_comment) VALUES ('MAARCHTOGEC', 'letterbox_coll', '1=0', 'Aucun courrier');
diff --git a/src/frontend/app/save-numeric-package.component.html b/src/frontend/app/save-numeric-package.component.html
index 984b3b080d7..45538528de3 100755
--- a/src/frontend/app/save-numeric-package.component.html
+++ b/src/frontend/app/save-numeric-package.component.html
@@ -12,7 +12,7 @@
             <div *ngIf="!loading" class="container-fluid">
                 <div class="row row-eq-height">
                     <div class="col-md-4 col-md-offset-4" style="margin-top: 50px;border-top: solid 2px #F99830;border-bottom: solid 2px #F99830;padding:10px;">
-                        <h2>{{lang.saveNumericPackage}}</h2>
+                        <h2>{{lang.manageNumericPackage}}</h2>
                         <form class="form-horizontal" (ngSubmit)="submitNumericPackage()" #saveNumericPackageForm="ngForm">
                             <input id="numericPackageFilePath" type="file" name="files[]"(change)="uploadNumericPackage($event)">
                             <br>
@@ -27,4 +27,4 @@
             </div>
         </mat-sidenav-content>
     </mat-sidenav-container>
-</div>
\ No newline at end of file
+</div>
diff --git a/src/frontend/lang/lang-en.ts b/src/frontend/lang/lang-en.ts
index 5a0101ec4b1..664414be538 100755
--- a/src/frontend/lang/lang-en.ts
+++ b/src/frontend/lang/lang-en.ts
@@ -778,7 +778,7 @@ export const LANG_EN = {
     "sameLevelMyPrimaryEntity"              : "Same level of my primary entity",
     "saturday"                              : "Saturday",
     "save"                                  : "Save",
-    "saveNumericPackage"                    : "Save numeric package",
+    "manageNumericPackage"                  : "Send and save numeric package",
     "sbSignatures"                          : "Signature Book Signatures",
     "script"                                : "Script",
     "scriptCreated"                         : "Script created",
diff --git a/src/frontend/lang/lang-fr.ts b/src/frontend/lang/lang-fr.ts
index 9608c0b2cb2..6edc1937aa9 100755
--- a/src/frontend/lang/lang-fr.ts
+++ b/src/frontend/lang/lang-fr.ts
@@ -811,7 +811,7 @@ export const LANG_FR = {
     "sameLevelMyPrimaryEntity"              : "Même niveau de mon entité primaire",
     "saturday"                              : "Samedi",
     "save"                                  : "Enregistrer",
-    "saveNumericPackage"                    : "Enregistrer un pli numérique",
+    "manageNumericPackage"                  : "Envoyer et enregistrer un pli numérique",
     "sbSignatures"                          : "Signatures de parapheur",
     "script"                                : "Script",
     "scriptCreated"                         : "Script créé",
diff --git a/src/frontend/lang/lang-nl.ts b/src/frontend/lang/lang-nl.ts
index b33e8dc5492..f53f8ee87f5 100755
--- a/src/frontend/lang/lang-nl.ts
+++ b/src/frontend/lang/lang-nl.ts
@@ -806,7 +806,7 @@ export const LANG_NL = {
     "sameLevelMyPrimaryEntity"              : "Same level of my primary entity", //_TO_TRANSLATE
     "saturday"                              : "Zaterdag",
     "save"                                  : "Bewaren",
-    "saveNumericPackage"                    : "Een digitale brief bewaren",
+    "manageNumericPackage"                    : "Een digitale brief bewaren",
     "sbSignatures"                          : "Handtekeningen van de parafeerder",
     "script"                                : "Script",
     "scriptCreated"                         : "Script aangemaakt",
diff --git a/src/frontend/service/privileges.service.ts b/src/frontend/service/privileges.service.ts
index d1e5d49a5b1..aa17fb7f452 100644
--- a/src/frontend/service/privileges.service.ts
+++ b/src/frontend/service/privileges.service.ts
@@ -502,9 +502,9 @@ export class PrivilegeService {
             'shortcut' : false
         },
         {
-            "id": "save_numeric_package",
-            "label": this.lang.saveNumericPackage,
-            "comment": this.lang.saveNumericPackage,
+            "id": "manage_numeric_package",
+            "label": this.lang.manageNumericPackage,
+            "comment": this.lang.manageNumericPackage,
             "route": "/saveNumericPackage",
             "style": "fa fa-file-archive",
             "unit": "sendmail",
-- 
GitLab