Merged in bugfix/PMCORE-1279 (pull request #7291)

PMCORE-1279

Approved-by: Julio Cesar Laura Avendaño <contact@julio-laura.com>
This commit is contained in:
Paula Quispe
2020-03-25 14:40:30 +00:00
committed by Julio Cesar Laura Avendaño
3 changed files with 76 additions and 1 deletions

View File

@@ -0,0 +1,33 @@
<?php
namespace Tests\unit\workflow\engine\src\ProcessMaker\Model;
use Illuminate\Foundation\Testing\DatabaseTransactions;
use ProcessMaker\Model\Task;
use Tests\TestCase;
/**
* Class TaskTest
*
* @coversDefaultClass \ProcessMaker\Model\Task
*/
class TaskTest extends TestCase
{
use DatabaseTransactions;
/**
* This checks to make get the name of the task
*
* @covers \ProcessMaker\Model\Task::title()
* @test
*/
public function it_should_return_pages_of_data()
{
$task = factory(Task::class)->create();
$taskInstance = new Task();
$title = $taskInstance->title($task->TAS_ID);
$this->assertEquals($title, $task->TAS_TITLE);
}
}

View File

@@ -1,6 +1,7 @@
<?php
use ProcessMaker\Util\DateTime;
use ProcessMaker\Model\Task as ModelTask;
switch ($RBAC->userCanAccess('PM_CASES')) {
case -2:
@@ -75,7 +76,13 @@ if (
$fieldsCase['PREVIOUS_USER'] = G::LoadTranslation('ID_NO_PREVIOUS_USR_UID');
}
//To enable information (dynaforms, steps) before claim a case
// Get the label of previous task
if (!empty($fieldsDelegation['TAS_ID'])) {
$taskInstance = new ModelTask();
$fieldsCase['PREVIOUS_TASK'] = $taskInstance->title($fieldsDelegation['TAS_ID']);
}
// To enable information (dynaforms, steps) before claim a case
$_SESSION['bNoShowSteps'] = true;
$G_MAIN_MENU = 'processmaker';
$G_SUB_MENU = 'caseOptions';

View File

@@ -2,6 +2,7 @@
namespace ProcessMaker\Model;
use G;
use Illuminate\Database\Eloquent\Model;
class Task extends Model
@@ -32,4 +33,38 @@ class Task extends Model
return $query->where('TAS_ASSIGN_TYPE', '=', 'SELF_SERVICE')
->where('TAS_GROUP_VARIABLE', '=', '');
}
/**
* Get the title of the task
*
* @param integer $tasId
*
* @return string
*/
public function title($tasId)
{
$query = Task::query()->select('TAS_TITLE');
$query->where('TAS_ID', $tasId);
$results = $query->get();
$title = '';
$results->each(function ($item, $key) use (&$title) {
$title = $item->TAS_TITLE;
switch ($title) {
case "INTERMEDIATE-THROW-EMAIL-EVENT":
$title = G::LoadTranslation('ID_INTERMEDIATE_THROW_EMAIL_EVENT');
break;
case "INTERMEDIATE-THROW-MESSAGE-EVENT":
$title = G::LoadTranslation('ID_INTERMEDIATE_THROW_MESSAGE_EVENT');
break;
case "INTERMEDIATE-CATCH-MESSAGE-EVENT":
$title = G::LoadTranslation('ID_INTERMEDIATE_CATCH_MESSAGE_EVENT');
break;
case "INTERMEDIATE-CATCH-TIMER-EVENT":
$title = G::LoadTranslation('ID_INTERMEDIATE_CATCH_TIMER_EVENT');
break;
}
});
return $title;
}
}