From 4f0792fe67bb2479afe915e8f0df97b07200b36f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vinicius=20Reis=20Gon=C3=A7alves?= Date: Fri, 27 Mar 2026 14:51:09 -0300 Subject: [PATCH 1/7] =?UTF-8?q?Mudan=C3=A7a=20no=20workspace=20local?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- composer.json | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/composer.json b/composer.json index c2d50339..3ebbf885 100644 --- a/composer.json +++ b/composer.json @@ -22,7 +22,7 @@ "require": { "php": "^8.2", "illuminate/support": "^11.0", - "uspdev/forms": "^0.6", + "uspdev/forms": "*", "spatie/laravel-activitylog": "^4.9", "spatie/laravel-permission": "^6.15", "symfony/workflow": "^7.1", @@ -36,5 +36,13 @@ "Uspdev\\Workflow\\WorkflowServiceProvider" ] } - } -} + }, + "repositories": + [ + { + "type": "path", + "url": "../forms", + "options": {"symlink": true} + } + ] +} \ No newline at end of file From 617b77ec5694eb6ace80193227ad33286abf3fd0 Mon Sep 17 00:00:00 2001 From: ViniReiwz Date: Fri, 10 Apr 2026 14:04:50 -0300 Subject: [PATCH 2/7] Iniciando o trabalho para gerar e manter backups dos workflows MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Começando a mover a lógca de controlador da aplicação para a biblioteca. Arquivos de route, diretórios de Http, Console, etc. criados Alguns métodos simples como geração do backup para cada definição e também geração de backups globais já foram immplementados (falta testar). --- composer.json | 10 +++- config/workflow.php | 4 +- resources/views/show/list-bckps.blade.php | 54 +++++++++++++++++++ resources/views/show/list-defs.blade.php | 47 ++++++++++++++++ .../views/show/partials/edit-btn.blade.php | 5 ++ resources/views/show/partials/tabs.blade.php | 8 +++ routes/web.php | 11 ++++ src/Console/Commands/WorfklowSync.php | 29 ++++++++++ .../Controllers/WorkflowBackupController.php | 54 +++++++++++++++++++ src/WorkflowServiceProvider.php | 4 ++ 10 files changed, 224 insertions(+), 2 deletions(-) create mode 100644 resources/views/show/list-bckps.blade.php create mode 100644 resources/views/show/list-defs.blade.php create mode 100644 resources/views/show/partials/edit-btn.blade.php create mode 100644 resources/views/show/partials/tabs.blade.php create mode 100644 routes/web.php create mode 100644 src/Console/Commands/WorfklowSync.php create mode 100644 src/Http/Controllers/WorkflowBackupController.php diff --git a/composer.json b/composer.json index c2d50339..6019ffd7 100644 --- a/composer.json +++ b/composer.json @@ -22,7 +22,7 @@ "require": { "php": "^8.2", "illuminate/support": "^11.0", - "uspdev/forms": "^0.6", + "uspdev/forms": "*", "spatie/laravel-activitylog": "^4.9", "spatie/laravel-permission": "^6.15", "symfony/workflow": "^7.1", @@ -30,6 +30,14 @@ "graphp/graph": "^1@dev", "graphp/graphviz": "1.x-dev" }, + "repositories": + [ + { + "type": "path", + "url": "../forms", + "options":{"symlink": true} + } + ], "extra": { "laravel": { "providers": [ diff --git a/config/workflow.php b/config/workflow.php index a508df11..a8b282b5 100644 --- a/config/workflow.php +++ b/config/workflow.php @@ -3,5 +3,7 @@ // Caminho de armazenamento das definições de workflow // Pega do .env, na variável WORKFLOW_STORAGE_PATH, mas usa 'storage/app/workflow-definitions' como caminho default return [ - 'storagePath' => env('WORKFLOW_STORAGE_PATH', storage_path('app/workflow-definitions')), + 'storagePath' => env('WORKFLOW_STORAGE_PATH', storage_path('app/workflowsJson')), + + 'prefix' => 'uspdev-workflow', ]; diff --git a/resources/views/show/list-bckps.blade.php b/resources/views/show/list-bckps.blade.php new file mode 100644 index 00000000..0f1fd44f --- /dev/null +++ b/resources/views/show/list-bckps.blade.php @@ -0,0 +1,54 @@ +@extends('uspdev-forms::layouts.app') + +@section('header') +@endsection + +@section('content') + +
@include('uspdev-workflow::show.partials.tabs')
+
+
+
+ USPdev workflow > + Backups +
+
+ @include('uspdev-forms::partials.ajuda-modal') +
+
+
+ + + + + + + + + + @foreach ($workflowDefinitions as $workflowDefinition) + + + + + + @endforeach + +
NomeDescriçãoAções
+ {{ $workflowDefinition->name }} + + {{-- + Verifica se o diretório que guarda os formulários existe. + Caso exista, exibe o número de backups do formulário existem dentro dele. + Senão, mostra 0. + --}} + {{ is_dir(config('uspdev-forms.forms_storage_dir')) ? count(array_filter(scandir(config('uspdev-forms.forms_storage_dir')), fn($filename) => str_contains($filename,$workflowDefinition->name))) : 0 }} + + + {{ $workflowDefinition->description }} + + @include('uspdev-workflow::show.partials.edit-btn') +
+
+
+@endsection diff --git a/resources/views/show/list-defs.blade.php b/resources/views/show/list-defs.blade.php new file mode 100644 index 00000000..1b86a28f --- /dev/null +++ b/resources/views/show/list-defs.blade.php @@ -0,0 +1,47 @@ +@extends('uspdev-forms::layouts.app') + +@section('header') +@endsection + +@section('content') + +
@include('uspdev-workflow::show.partials.tabs')
+
+
+
+ USPdev workflow > + Definições + Nova Definição +
+
+ @include('uspdev-forms::partials.ajuda-modal') +
+
+
+ + + + + + + + + + @foreach ($workflowDefinitions as $workflowDefinition) + + + + + + @endforeach + +
NomeDescriçãoAções
+ {{ $workflowDefinition->name }} + + {{ $workflowDefinition->description }} + + @include('uspdev-workflow::show.partials.edit-btn') +
+
+
+@endsection diff --git a/resources/views/show/partials/edit-btn.blade.php b/resources/views/show/partials/edit-btn.blade.php new file mode 100644 index 00000000..cbee075f --- /dev/null +++ b/resources/views/show/partials/edit-btn.blade.php @@ -0,0 +1,5 @@ +
+ + Editar + +
\ No newline at end of file diff --git a/resources/views/show/partials/tabs.blade.php b/resources/views/show/partials/tabs.blade.php new file mode 100644 index 00000000..06c59dcd --- /dev/null +++ b/resources/views/show/partials/tabs.blade.php @@ -0,0 +1,8 @@ +