Skip to content
Snippets Groups Projects
Commit d128fe1a authored by Vinciane's avatar Vinciane
Browse files

FIX #9349 fix front and controller

- initialize listinstances[] + empty
- variable lang fusion
- DEL and END resource status
- code format
parent d8ae2a5f
No related branches found
No related tags found
No related merge requests found
...@@ -23,6 +23,7 @@ use Entity\models\EntityModel; ...@@ -23,6 +23,7 @@ use Entity\models\EntityModel;
use SrcCore\models\DatabaseModel; use SrcCore\models\DatabaseModel;
use User\models\UserModel; use User\models\UserModel;
use Resource\models\ResModel; use Resource\models\ResModel;
use Group\models\ServiceModel;
class ListInstanceController class ListInstanceController
{ {
...@@ -72,17 +73,23 @@ class ListInstanceController ...@@ -72,17 +73,23 @@ class ListInstanceController
return $response->withJson($listinstances); return $response->withJson($listinstances);
} }
public function getListWhereUserIsDest(Request $request, Response $response, array $aArgs) { public function getListWhereUserIsDest(Request $request, Response $response, array $aArgs)
{
if (!ServiceModel::hasService(['id' => 'admin_users', 'userId' => $GLOBALS['userId'], 'location' => 'apps', 'type' => 'admin'])) {
return $response->withStatus(403)->withJson(['errors' => 'Service forbidden']);
}
$data = ListInstanceModel::getListWhereUserIsDest(['select' => ['li.*'], 'id' => $aArgs['itemId']]); $data = ListInstanceModel::getListWhereUserIsDest(['select' => ['li.*'], 'id' => $aArgs['itemId']]);
if($data) { $listinstances = [];
if (!empty($data)) {
$res_id = 0; $res_id = 0;
$array=[]; $array = [];
foreach($data as $value) { foreach ($data as $value) {
if($res_id == 0) { if ($res_id == 0) {
$res_id = $value['res_id']; $res_id = $value['res_id'];
} else if( $res_id != $value['res_id']) { } elseif ($res_id != $value['res_id']) {
$listinstances[] = ['resId' => $res_id, "listinstances" => $array]; $listinstances[] = ['resId' => $res_id, "listinstances" => $array];
$res_id = $value['res_id']; $res_id = $value['res_id'];
$array = []; $array = [];
...@@ -92,31 +99,29 @@ class ListInstanceController ...@@ -92,31 +99,29 @@ class ListInstanceController
$listinstances[] = ['resId' => $res_id, "listinstances" => $array]; $listinstances[] = ['resId' => $res_id, "listinstances" => $array];
} }
return $response->withJson(['listinstances' => $listinstances]); return $response->withJson(['listinstances' => $listinstances]);
} }
public function update(Request $request, Response $response) public function update(Request $request, Response $response)
{ {
$data = $request->getParams(); $data = $request->getParams();
if(empty($data['listinstances'])) { if (empty($data['listinstances'])) {
return $response->withStatus(400)->withJson(['errors' => 'listinstance is missing or is empty']); return $response->withStatus(400)->withJson(['errors' => 'listinstances is missing or is empty']);
} }
DatabaseModel::beginTransaction(); DatabaseModel::beginTransaction();
foreach ($data['listinstances'] as $ListInstanceByRes) { foreach ($data['listinstances'] as $ListInstanceByRes) {
foreach ($ListInstanceByRes['listinstances'] as $instance) {
foreach($ListInstanceByRes['listinstances'] as $instance) { if (empty($instance['res_id']) || empty($instance['item_id']) || empty($instance['item_type']) || empty($instance['item_mode']) || empty($instance['difflist_type'])) {
if( empty($instance['res_id']) || empty($instance['item_id']) || empty($instance['item_type']) || empty($instance['item_mode']) || empty($instance['difflist_type']) ) {
DatabaseModel::rollbackTransaction(); DatabaseModel::rollbackTransaction();
return $response->withStatus(400)->withJson(['errors' => 'Some data are empty']); return $response->withStatus(400)->withJson(['errors' => 'Some data are empty']);
} }
if( isset($instance['listinstance_id']) && !empty($instance['listinstance_id']) ) { if (isset($instance['listinstance_id']) && !empty($instance['listinstance_id'])) {
$check = ListInstanceModel::getById(['select' => ['listinstance_id'], 'id' => $instance['listinstance_id']]); $check = ListInstanceModel::getById(['select' => ['listinstance_id'], 'id' => $instance['listinstance_id']]);
if( !$check) { if (!$check) {
DatabaseModel::rollbackTransaction(); DatabaseModel::rollbackTransaction();
return $response->withStatus(400)->withJson(['errors' => 'listinstance_id is not correct']); return $response->withStatus(400)->withJson(['errors' => 'listinstance_id is not correct']);
} }
...@@ -136,13 +141,13 @@ class ListInstanceController ...@@ -136,13 +141,13 @@ class ListInstanceController
ListInstanceModel::create($instance); ListInstanceModel::create($instance);
if($instance['item_mode'] == 'dest') { if ($instance['item_mode'] == 'dest') {
ResModel::update([ ResModel::update([
'set' => ['dest_user' => $instance['item_id']], 'set' => ['dest_user' => $instance['item_id']],
'where' => ['res_id = ?'], 'where' => ['res_id = ?'],
'data' => [$instance['res_id']] 'data' => [$instance['res_id']]
]); ]);
} }
} }
} }
......
...@@ -218,7 +218,6 @@ class ListTemplateController ...@@ -218,7 +218,6 @@ class ListTemplateController
public function delete(Request $request, Response $response, array $aArgs) public function delete(Request $request, Response $response, array $aArgs)
{ {
$listTemplates = ListTemplateModel::getById(['id' => $aArgs['id'], 'select' => ['object_id', 'object_type']]); $listTemplates = ListTemplateModel::getById(['id' => $aArgs['id'], 'select' => ['object_id', 'object_type']]);
if (!ServiceModel::hasService(['id' => 'manage_entities', 'userId' => $GLOBALS['userId'], 'location' => 'entities', 'type' => 'admin']) && !strstr($listTemplates[0]['object_id'], 'VISA_CIRCUIT_') && !strstr($listTemplates[0]['object_id'], 'AVIS_CIRCUIT_')) { if (!ServiceModel::hasService(['id' => 'manage_entities', 'userId' => $GLOBALS['userId'], 'location' => 'entities', 'type' => 'admin']) && !strstr($listTemplates[0]['object_id'], 'VISA_CIRCUIT_') && !strstr($listTemplates[0]['object_id'], 'AVIS_CIRCUIT_')) {
...@@ -271,12 +270,15 @@ class ListTemplateController ...@@ -271,12 +270,15 @@ class ListTemplateController
public function updateByUserWithEntityDest(Request $request, Response $response) public function updateByUserWithEntityDest(Request $request, Response $response)
{ {
if (!ServiceModel::hasService(['id' => 'admin_users', 'userId' => $GLOBALS['userId'], 'location' => 'apps', 'type' => 'admin'])) {
return $response->withStatus(403)->withJson(['errors' => 'Service forbidden']);
}
$data = $request->getParams(); $data = $request->getParams();
DatabaseModel::beginTransaction(); DatabaseModel::beginTransaction();
foreach ($data['redirectListModels'] as $listModel) { foreach ($data['redirectListModels'] as $listModel) {
//check if user exist
$user = UserModel::getByLogin(['login' => $listModel['redirectUserId']]); $user = UserModel::getByLogin(['login' => $listModel['redirectUserId']]);
if (empty($user) || $user['status'] != "OK") { if (empty($user) || $user['status'] != "OK") {
DatabaseModel::rollbackTransaction(); DatabaseModel::rollbackTransaction();
......
...@@ -216,11 +216,10 @@ abstract class ListInstanceModelAbstract ...@@ -216,11 +216,10 @@ abstract class ListInstanceModelAbstract
'table' => ['listinstance li', 'res_letterbox res', 'mlb_coll_ext mlb'], 'table' => ['listinstance li', 'res_letterbox res', 'mlb_coll_ext mlb'],
'left_join' => ['li.res_id = res.res_id', 'res.res_id = mlb.res_id'], 'left_join' => ['li.res_id = res.res_id', 'res.res_id = mlb.res_id'],
'where' => ['res.dest_user = ?', 'li.difflist_type = ?', 'mlb.closing_date is null'], 'where' => ['res.dest_user = ?', 'li.difflist_type = ?', 'mlb.closing_date is null'],
'data' => [$aArgs['id'], 'entity_id'], 'data' => [$aArgs['id'], 'entity_id', ['END', 'DEL']],
'order_by' => ['res_id ASC'] 'order_by' => ['res_id ASC']
]); ]);
return $aListinstance; return $aListinstance;
} }
} }
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
<div class="modal-body" *ngIf="data.userDestRedirect.isResDestUser"> <div class="modal-body" *ngIf="data.userDestRedirect.isResDestUser">
<h2 mat-dialog-title>{{lang.redirectUserListInstances}}</h2> <h2 mat-dialog-title>{{lang.redirectUserListInstances}}</h2>
<div class="alert alert-warning" role="alert"> <div class="alert alert-warning" role="alert">
<b>{{this.data.userDestRedirect.firstname}} {{this.data.userDestRedirect.lastname}}</b>&nbsp;<span> {{lang.isResDest}}, {{lang.chooseNewDestUser}}</span> : <b>{{this.data.userDestRedirect.firstname}} {{this.data.userDestRedirect.lastname}}</b>&nbsp;<span [innerHTML]="lang.chooseNewDestUser"></span> :
</div> </div>
<div id="{{this.data.userDestRedirect.user_id}}" class="form-group"> <div id="{{this.data.userDestRedirect.user_id}}" class="form-group">
......
...@@ -802,8 +802,7 @@ export const LANG_EN = { ...@@ -802,8 +802,7 @@ export const LANG_EN = {
"destination" : "entity destination", "destination" : "entity destination",
"selectAllResInBasket" : "Select all mails in basket", "selectAllResInBasket" : "Select all mails in basket",
"redirectUserListInstances" : "Change of recipient for mail being processed", "redirectUserListInstances" : "Change of recipient for mail being processed",
"isResDest" : "is the recipient of mail being processed", "chooseNewDestUser" : "is the <b>recipient</b> of mail being processed, please select a <b>replacement user</b>",
"chooseNewDestUser" : "please select a replacement user",
"newDest" : "New recipient for", "newDest" : "New recipient for",
"newDestRes" : "New recipient for mails" "newDestRes" : "New recipient for mails"
}; };
...@@ -828,8 +828,7 @@ export const LANG_FR = { ...@@ -828,8 +828,7 @@ export const LANG_FR = {
"destination" : "entité traitante", "destination" : "entité traitante",
"selectAllResInBasket" : "Sélectionner tous les courriers de la bannette", "selectAllResInBasket" : "Sélectionner tous les courriers de la bannette",
"redirectUserListInstances" : "Changement de destinataire pour les courriers en cours de traitement", "redirectUserListInstances" : "Changement de destinataire pour les courriers en cours de traitement",
"isResDest" : "est destinataire de courriers en cours de traitement", "chooseNewDestUser" : "est en <b>destinataire</b> de courriers en cours de traitement, veuillez choisir un utilisateur de <b>remplacement</b>",
"chooseNewDestUser" : "veuillez choisir un utilisateur de remplacement",
"newDest" : "Nouveau destinataire pour", "newDest" : "Nouveau destinataire pour",
"newDestRes" : "Nouveau destinataire pour les courriers" "newDestRes" : "Nouveau destinataire pour les courriers"
}; };
...@@ -831,8 +831,7 @@ export const LANG_NL = { ...@@ -831,8 +831,7 @@ export const LANG_NL = {
"destination" : "_TO_TRANSLATE", "destination" : "_TO_TRANSLATE",
"selectAllResInBasket" : "_TO_TRANSLATE", "selectAllResInBasket" : "_TO_TRANSLATE",
"redirectUserListInstances" : "_TO_TRANSLATE_Change of recipient for mail being processed", "redirectUserListInstances" : "_TO_TRANSLATE_Change of recipient for mail being processed",
"isResDest" : "_TO_TRANSLATE_is the recipient of mail being processed", "chooseNewDestUser" : "is the <b>recipient</b> of mail being processed, please select a <b>replacement user</b>", //_TO_TRANSLATE_
"chooseNewDestUser" : "_TO_TRANSLATE_please select a replacement user", "newDest" : "New recipient for", //_TO_TRANSLATE_
"newDest" : "_TO_TRANSLATE_New recipient for", "newDestRes" : "New recipient for mails" //_TO_TRANSLATE_
"newDestRes" : "_TO_TRANSLATE_New recipient for mails"
}; };
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment