Skip to content
Snippets Groups Projects
Verified Commit c1cce7b0 authored by Damien's avatar Damien
Browse files

FEAT #9514 Begining AR action

parent 6c103e4c
No related branches found
No related tags found
No related merge requests found
......@@ -36,6 +36,34 @@ class AcknowledgementReceiptModel
return $aTemplates;
}
public static function create(array $aArgs)
{
ValidatorModel::notEmpty($aArgs, ['resId', 'type', 'format', 'userId', 'contactAddressId', 'docserverId', 'path', 'filename', 'fingerprint']);
ValidatorModel::intVal($aArgs, ['resId', 'userId']);
ValidatorModel::stringType($aArgs, ['type', 'format', 'docserverId', 'path', 'filename', 'fingerprint']);
$nextSequenceId = DatabaseModel::getNextSequenceValue(['sequenceId' => 'acknowledgement_receipts_id_seq']);
DatabaseModel::insert([
'table' => 'acknowledgment_receipts',
'columnsValues' => [
'id' => $nextSequenceId,
'res_id' => $aArgs['resId'],
'type' => $aArgs['type'],
'format' => $aArgs['format'],
'user_id' => $aArgs['userId'],
'contact_address_id' => $aArgs['contactAddressId'],
'creation_date' => 'CURRENT_TIMESTAMP',
'docserver_id' => $aArgs['docserverId'],
'path' => $aArgs['path'],
'filename' => $aArgs['filename'],
'fingerprint' => $aArgs['fingerprint']
]
]);
return $nextSequenceId;
}
public static function update(array $aArgs)
{
ValidatorModel::notEmpty($aArgs, ['set', 'where', 'data']);
......
......@@ -23,6 +23,8 @@ use SrcCore\models\CurlModel;
class ActionMethodController
{
use ActionMethodTraitAcknowledgementReceipt;
const COMPONENTS_ACTIONS = [
'confirmAction' => null,
'closeMailAction' => 'closeMailAction',
......
<?php
/**
* Copyright Maarch since 2008 under licence GPLv3.
* See LICENCE.txt file at the root folder for more details.
* This file is part of Maarch software.
* @brief ActionController
* @author dev <dev@maarch.org>
* @ingroup core
*/
namespace Action\controllers;
use Contact\models\ContactModel;
use Resource\models\ResModel;
use SrcCore\models\DatabaseModel;
use SrcCore\models\ValidatorModel;
trait ActionMethodTraitAcknowledgementReceipt
{
public static function createAcknowledgementReceipts(array $aArgs)
{
ValidatorModel::notEmpty($aArgs, ['resId']);
ValidatorModel::intVal($aArgs, ['resId']);
$ext = ResModel::getExtById(['select' => ['category_id', 'address_id', 'is_multicontacts'], 'resId' => $aArgs['resId']]);
if (empty($ext) || $ext['category_id'] != 'incoming') {
return [];
}
$contactsToProcess = [];
if ($ext['is_multicontacts'] == 'Y') {
$multiContacts = DatabaseModel::select([
'select' => ['address_id'],
'table' => ['contacts_res'],
'where' => ['res_id = ?', 'mode = ?', 'address_id != ?'],
'data' => [$aArgs['resId'], 'multi', 0]
]);
foreach ($multiContacts as $multiContact) {
$contactsToProcess[] = $multiContact['address_id'];
}
} else {
$contactsToProcess[] = $ext['address_id'];
}
if (empty($contactsToProcess)) {
return [];
}
foreach ($contactsToProcess as $contactToProcess) {
$contact = ContactModel::getByAddressId(['addressId' => $contactToProcess, 'select' => ['email', 'address_street', 'address_town', 'address_postal_code']]);
//TODO check si pas adresse
if (!empty($contact['email'])) {
}
}
return true;
}
}
......@@ -641,7 +641,7 @@ class ResourceListController
$methodResponses = [];
foreach ($resourcesForAction as $resId) {
if (!empty($method)) {
$methodResponse = ActionMethodController::$method(['id' => $aArgs['actionId'], 'resId' => $resId, 'data' => $body['data']]);
$methodResponse = ActionMethodController::$method(['resId' => $resId, 'data' => $body['data']]);
if (!empty($methodResponse['errors'])) {
return $response->withStatus(500)->withJson(['errors' => $methodResponse['errors']]);
}
......
......@@ -166,7 +166,7 @@ abstract class TemplateModelAbstract
{
ValidatorModel::notEmpty($aArgs, ['id']);
$datasources = [];
$datasource = [];
$loadedXml = CoreConfigModel::getXmlLoaded(['path' => 'modules/templates/xml/datasources.xml']);
if ($loadedXml) {
......
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