diff --git a/src/app/note/controllers/NoteController.php b/src/app/note/controllers/NoteController.php index 8fcf3c4a4e114bbf3d1df6142488d24e495e39aa..30f444d223c393ee2b8df64601d0e25db94e6a14 100755 --- a/src/app/note/controllers/NoteController.php +++ b/src/app/note/controllers/NoteController.php @@ -16,7 +16,7 @@ namespace Note\controllers; use Note\models\NoteModel; -use Note\models\NoteEntitieModel; +use Note\models\NoteEntityModel; use Respect\Validation\Validator; use Slim\Http\Request; use Slim\Http\Response; @@ -24,7 +24,7 @@ use History\controllers\HistoryController; class NoteController { - public function getByResId(Request $request, Response $response) + public function getByResId(Request $request, Response $response, $aArgs) { $check = Validator::intVal()->validate($aArgs['resId']); if (!$check) { @@ -41,26 +41,21 @@ class NoteController $data = $request->getParams(); //Insert note in notes table and recover last insert ID - $check_note = Validator::stringType()->notEmpty()->validate($data['note_text']); - $check_note = $check_note && Validator::intVal()->notEmpty()->validate($data['identifier']); //correspond to res_id - $check_note = $check_note && Validator::stringType()->notEmpty()->validate($data['user_id']); + $check = Validator::stringType()->notEmpty()->validate($data['note_text']); + $check = $check && Validator::intVal()->notEmpty()->validate($data['identifier']); //correspond to res_id + $check = $check && Validator::stringType()->notEmpty()->validate($GLOBALS['userId']); + $check = $check && Validator::arrayType()->validate($data['entities_chosen']); - if (!$check_note) { + if (!$check) { return $response->withStatus(400)->withJson(['errors' => 'Bad Request']); } $data['note_id'] = NoteModel::create($data); - + //Insert relation note with entities in note_entities_table - $check_entities = Validator::intVal()->notEmpty()->validate($data['note_id']); - $check_entities = $check_entities && Validator::arrayType()->notEmpty()->validate($data['entities_chosen']); - - if (!$check_entities) { - return $response->withStatus(400)->withJson(['errors' => 'Bad Request']); - } else { - for ($i=0; $i<count($data['entities_chosen']); $i++) - { - $data['note_entities_id'][$i] = NoteEntitieModel::create( ['item_id' => $data['entities_chosen'][$i], 'note_id' => $data['note_id'] ]); + if (!empty($data['note_id']) && isset($data['entities_chosen']) && !empty($data['entities_chosen'])) { + foreach($data['entities_chosen'] as $entity) { + $entity = NoteEntityModel::create( ['item_id' => $entity, 'note_id' => $data['note_id'] ]); } } @@ -69,12 +64,12 @@ class NoteController 'tableName' => "notes", 'recordId' => $data['note_id'], 'eventType' => "ADD", - 'userId' => $data['user_id'], + 'userId' => $GLOBALS['userId'], 'info' => "Annotation ajoutée (" . $data['note_id'] . ")", 'moduleId' => 'notes', - 'eventId' => 'nateadd'] + 'eventId' => 'noteadd'] ); - return true; + return ['success' => 'success']; } } diff --git a/src/app/note/models/NoteEntitieModel.php b/src/app/note/models/NoteEntityModel.php similarity index 82% rename from src/app/note/models/NoteEntitieModel.php rename to src/app/note/models/NoteEntityModel.php index 6c3c49b11b9382ceaef3d5b8bf36cfd624e4e61c..fe254e095c6517e3475d79d1c0ea26f21cf5f24f 100644 --- a/src/app/note/models/NoteEntitieModel.php +++ b/src/app/note/models/NoteEntityModel.php @@ -14,6 +14,6 @@ namespace Note\models; -class NoteEntitieModel extends NoteEntitieModelAbstract +class NoteEntityModel extends NoteEntityModelAbstract { } \ No newline at end of file diff --git a/src/app/note/models/NoteEntitieModelAbstract.php b/src/app/note/models/NoteEntityModelAbstract.php similarity index 77% rename from src/app/note/models/NoteEntitieModelAbstract.php rename to src/app/note/models/NoteEntityModelAbstract.php index c8ce3d1dc055a417282505e8de555cd2febf7d87..bebe8f9b9415460653b78b0988c60eb2b6d67073 100644 --- a/src/app/note/models/NoteEntitieModelAbstract.php +++ b/src/app/note/models/NoteEntityModelAbstract.php @@ -17,7 +17,7 @@ namespace Note\models; use SrcCore\models\DatabaseModel; use SrcCore\models\ValidatorModel; -abstract class NoteEntitieModelAbstract +abstract class NoteEntityModelAbstract { public static function create(array $aArgs) { @@ -25,17 +25,12 @@ abstract class NoteEntitieModelAbstract ValidatorModel::intVal($aArgs, ['note_id']); ValidatorModel::stringType($aArgs, ['item_id']); - $nextSequenceId = DatabaseModel::getNextSequenceValue(['sequenceId' => 'notes_entities_id_seq']); - DatabaseModel::insert([ 'table' => 'note_entities', 'columnsValues' => [ - 'id' => $nextSequenceId, 'note_id' => $aArgs['note_id'], 'item_id' => $aArgs['item_id'] ] ]); - - return $nextSequenceId; } } diff --git a/src/app/note/models/NoteModelAbstract.php b/src/app/note/models/NoteModelAbstract.php index 276267f30ba17b0a06694df5994cc7c362b2947a..f48d851c28078349ee6f16835b97936a78e4f38a 100755 --- a/src/app/note/models/NoteModelAbstract.php +++ b/src/app/note/models/NoteModelAbstract.php @@ -68,7 +68,6 @@ abstract class NoteModelAbstract public static function create(array $aArgs) { - //ValidatorModel::notEmpty($aArgs, ['identifier', 'tablename', 'user_id', 'coll_id', 'note_text']); ValidatorModel::notEmpty($aArgs, ['identifier', 'user_id', 'note_text']); ValidatorModel::intVal($aArgs, ['identifier']); @@ -79,11 +78,11 @@ abstract class NoteModelAbstract 'columnsValues' => [ 'id' => $nextSequenceId, 'identifier' => $aArgs['identifier'], - 'tablename' => 'res_letterbox', //$aArgs['tablename'], + 'tablename' => 'res_letterbox', 'user_id' => $aArgs['user_id'], 'date_note' => 'CURRENT_TIMESTAMP', 'note_text' => $aArgs['note_text'], - 'coll_id' => 'letterbox_coll' //$aArgs['coll_id'], + 'coll_id' => 'letterbox_coll' ] ]);