Files
SGF/scripts/sgf-hr-personnel-proof-bootstrap.php
2026-11-11 09:00:17 +02:00

7 lines
2.0 KiB
PHP

<?php
require __DIR__.'/sgf-remunerations-proof-bootstrap.php';
$access=json_decode(file_get_contents($repo.'/docs/integration/sgf-human-resources-personnel-access-proposal.json'),true);config(['hr_personnel.enabled'=>true,'hr_personnel.schema_sha256'=>hash_file('sha256',$repo.'/database/sql/hr_personnel.sql'),'hr_personnel.access_sha256'=>hash('sha256',Tempo\Finance\Payables\Payables::canonical(['scope'=>$access['scope'],'grants'=>$access['grants_per_book']]))]);
$hp=app(App\Modules\HumanResources\Personnel::class);$hpInput=fn($kind,$key,$version,$data,$action='prepare')=>['kind'=>$kind,'record_key'=>$key,'version'=>$version,'action'=>$action,'reason'=>'Decisão individual QA de contrato, assiduidade ou férias sem efeito financeiro.','data'=>$data];$hpPreview=function($alias,$in,$key=null)use($hp,$select,$hrActor,$uuid){$select($alias);return$hp->preview($hrActor($alias),$in,$key??$uuid());};$hpConfirm=function($alias,$token,$generation='rm-proof')use($hp,$select,$hrActor){$select($alias,$generation);return$hp->confirm($hrActor($alias),$token);};$hpCommand=function($alias,$in,$key=null)use($hpPreview,$hpConfirm,$uuid){$key??=$uuid();$p=$hpPreview($alias,$in,$key);return[$hpConfirm($alias,$p['preview']),$p,$key];};$hpList=function($kind,$extra=[],$alias=17)use($hp,$select,$hrActor){$select($alias);return$hp->listing($hrActor($alias),['kind'=>$kind]+$extra);};
$workerSource=$host->table('rm_versions')->where(['tenant_id'=>1,'company_id'=>2,'unit_id'=>2,'kind'=>'worker','state'=>'approved'])->orderByDesc('id')->first();if(!$workerSource)throw new LogicException('Reuse existing regression worker');$workerKey=$workerSource->record_key;$ranges=[['from'=>480,'to'=>720],['from'=>780,'to'=>1020]];$evidence='Exercício fictício de RH, sem documento legal ou efeito salarial.';
$contractData=['operation'=>'establish','worker_key'=>$workerKey,'reference'=>'QA-CONTRATO-PROVA','mode'=>'fixed','valid_from'=>'2026-11-01','valid_to'=>'2026-12-31','gross'=>'10000.00','evidence'=>$evidence];