public function loadRequisicao($id) { try { //carrega a requisição $requisicao = new Requisicao($id); //adiciona os dados em um array de objeto foreach ($requisicao->getItems() as $item) { $obj = new stdClass(); $obj->DataRequisicao = TDate::date2br($requisicao->emissao); $obj->NroProcAquisicao = $requisicao->numeroProcesso; $obj->NroSrp = $requisicao->srp->numeroSRP; $obj->ProcOrig = $requisicao->srp->numeroProcesso; $obj->UASG = $requisicao->srp->uasg; $obj->NomeLicitacao = $requisicao->srp->nome; $obj->SubElemento = $item->subelemento->id; $obj->ValidadeAta = TDate::date2br($requisicao->srp->validade); $obj->PrazoEntrega = $item->prazoEntrega; $obj->EstimativoCampus = CAMPUS; $obj->OrcamentoCampus = CAMPUS; $obj->CampusDestino = CAMPUS; $obj->LocalEntrega = CAMPUS; $obj->Item = str_pad($item->numeroItem, 3, '0', STR_PAD_LEFT); $obj->DescricaoSumaria = $item->descricaoSumaria; $obj->QtdSolicitada = $item->quantidade; $obj->ValorLicitadoUnitario = $item->valorUnitario; $obj->fornecedor = $item->fornecedor->nome; $obj->cnpj = $item->fornecedor->cnpj; $obj->contrato = ''; $obj->justificativa = $item->justificativa; $this->array_obj[] = $obj; } //ordena o array em ordem de fornecedor usort($this->array_obj, array("Exportar", "cmp")); return true; } catch (Exception $ex) { throw new Exception($ex->getMessage()); } }
/** * method onReload() * Load the datagrid with the database objects */ function onReload($param = NULL) { try { // open a transaction with database 'saciq' TTransaction::open('saciq'); //TTransaction::setLogger(new TLoggerTXT('c:\array\file.txt')); // creates a repository for Cessao $repository = new TRepository('Cessao'); $limit = 10; // creates a criteria $criteria = new TCriteria(); // default order if (empty($param['order'])) { $param['order'] = 'id'; $param['direction'] = 'asc'; } $criteria->setProperties($param); // order, offset $criteria->setProperty('limit', $limit); $criteria->add(new TFilter('aprovado', '=', '1')); if (TSession::getValue('CessaoList_filter_numeroCessao')) { $criteria->add(TSession::getValue('CessaoList_filter_numeroCessao')); // add the session filter } // load the objects according to criteria $objects = $repository->load($criteria, FALSE); $this->datagrid->clear(); if ($objects) { // iterate the collection of active records foreach ($objects as $object) { if ($object->srp->estaVencida()) { continue; } $object->emissao = TDate::date2br($object->emissao); $object->numeroSRP = $object->srp->numeroSRP; $this->datagrid->addItem($object); } } // close the transaction TTransaction::close(); $this->loaded = true; } catch (Exception $e) { if ($e->getCode() == 23000) { new TMessage('error', '<b>Registro duplicado</b><br>Verifique os campos inseridos e tente novamente'); } else { if ($e->getCode() == 0) { new TMessage('error', '<b>Error</b> <br>' . $e->getMessage()); } else { new TMessage('error', '<b>Error Desconhecido</b> <br>Código: ' . $e->getCode()); } } // desfazer todas as operacoes pendentes TTransaction::rollback(); } }
/** * method onGenerate() * Executed whenever the user clicks at the generate button */ function onGenerate() { try { // open a transaction with database 'saciq' TTransaction::open('saciq'); //TTransaction::setLogger(new TLoggerTXT("c:\\array\\LOG" . date("Ymd-His") . ".txt")); // get the form data into an active record $formdata = $this->form->getData(); $validadeI = $formdata->validadeI; $validadeF = TDate::date2us($formdata->validadeF); if (!$validadeI === 0) { $validadeI = '0'; } else { $validadeI = TDate::date2us($validadeI); } $this->form->validate(); $repository = new TRepository('Srp'); $criteria = new TCriteria(); $param['order'] = 'id'; $param['direction'] = 'desc'; $criteria->setProperties($param); if ($formdata->numeroProcessoI != '' && $formdata->numeroProcessoF != '') { $criteria->add(new TFilter('numeroProcesso', 'BETWEEN', "{$formdata->numeroProcessoI}", "{$formdata->numeroProcessoF}")); } if ($formdata->validadeI != '' && $formdata->validadeF != '') { $criteria->add(new TFilter('validade', 'between', "{$validadeI}", "{$validadeF}")); } if ($formdata->numeroSRPI != '' && $formdata->numeroSRPF != '') { $criteria->add(new TFilter('numeroSRP', 'between', "{$formdata->numeroSRPI}", "{$formdata->numeroSRPF}")); } if ($formdata->numeroIRPI != '' && $formdata->numeroIRPF != '') { $criteria->add(new TFilter('numeroIRP', 'between', "{$formdata->numeroIRPI}", "{$formdata->numeroIRPF}")); } $imprimeZero = true; if (isset($formdata->itensZero)) { if ($formdata->itensZero === '0') { $imprimeZero = false; } } $srps = $repository->load($criteria, true); if ($srps) { $this->pdf = new FPDF(); $this->pdf->AliasNbPages(); $this->pdf->SetMargins(10, 10, 10); $this->pdf->setHeaderCallback(array($this, 'header')); $this->pdf->setFooterCallback(array($this, 'footer')); $this->pdf->AddPage(); foreach ($srps as $srp) { $this->data = $srp; $this->srpHeader($imprimeZero); $this->srpItens($imprimeZero); } if (!file_exists("app/output/RelatorioSrp.pdf") or is_writable("app/output/RelatorioSrp.pdf")) { $this->pdf->Output("app/output/RelatorioSrp.pdf"); } else { throw new Exception('Permissão negada' . ': ' . "app/output/RelatorioSrp.pdf"); } parent::openFile("app/output/RelatorioSrp.pdf"); //new TMessage('info', 'Relatório gerado. Por favor, habilite o pop-up do seu browser.'); } else { new TMessage('error', 'Nenhum registro encontrado'); } // fill the form with the active record data $this->form->setData($formdata); // close the transaction TTransaction::close(); } catch (Exception $e) { // in case of exception if ($e->getCode() == 23000) { new TMessage('error', '<b>Registro duplicado</b><br>Verifique os campos inseridos e tente novamente'); } else { if ($e->getCode() == 0) { new TMessage('error', '<b>Error</b> <br>' . $e->getMessage()); } else { new TMessage('error', '<b>Error Desconhecido</b> <br>Código: ' . $e->getCode()); } } // desfazer todas as operacoes pendentes TTransaction::rollback(); } }
public function onSelect($param) { try { //var_dump($param); $key = $param['key']; if (!$key) { return; } TTransaction::open('saciq'); //$srp = new Srp($key); $repository = new TRepository('Srp'); $criteria = new TCriteria(); $criteria->add(new TFilter('numeroSRP', '=', $key)); $srps = $repository->load($criteria); if (count($srps) > 0) { $srp = $srps[0]; } if ($srp->estaVencida()) { new TMessage('error', 'SRP Vencida!'); return; } $oldSRP = NULL; if ($oldSRP != TSession::getValue('SRP_id')) { $oldSRP = TSession::getValue('SRP_id'); } if ($oldSRP != $srp->id) { if (TSession::getValue('cessao_itens')) { $reloadForm = true; } TSession::delValue('cessao_itens'); $obj = new stdClass(); $obj->numeroItem = ''; $obj->descricaoSumaria = ''; $obj->valorUnitario = ''; $obj->quantidade = ''; //$obj->prazoEntrega = '60 Dias'; //$obj->justificativa = ''; TForm::sendData('form_itens', $obj); } TSession::setValue('SRP_id', $srp->id); $obj = new stdClass(); $obj->numeroSRP = $srp->numeroSRP; $obj->nome = $srp->nome; $obj->numeroProcessoOrigem = $srp->numeroProcesso; $obj->uasg = $srp->uasg; $obj->validade = TDate::date2br($srp->validade); TForm::sendData('form_cessao', $obj); TSession::setValue('form_cessao', $obj); if (isset($reloadForm) && $reloadForm) { TScript::create("__adianti_load_page2('engine.php?class=CessaoForm');"); //new TScript("__adianti_load_page('engine?class=CessaoForm');"); } //AdiantiCoreApplication::executeMethod('CessaoForm','onReload'); TTransaction::close(); parent::closeWindow(); } catch (Exception $e) { $obj = new stdClass(); $obj->numeroSRP = ''; $obj->nome = ''; $obj->numeroProcesso = ''; $obj->uasg = ''; $obj->validade = ''; TForm::sendData('cessao_form', $obj); TTransaction::rollback(); } }
function onReload($param = null) { $this->datagrid->clear(); $key = $param['key']; if (!isset($key)) { $value = TSession::getValue('srp_form_view_key'); if (!isset($value)) { return; } $key = $value; } try { TTransaction::open('saciq'); $srp = new Srp($key); if (!isset($srp)) { TTransaction::close(); return; } $object = new stdClass(); $object->id = $srp->id; $object->numeroSRP = $srp->numeroSRP; $object->numeroIRP = $srp->numeroIRP; $object->numeroProcesso = $srp->numeroProcesso; $object->uasg = $srp->uasg; $object->validade = TDate::date2br($srp->validade); $object->nome = $srp->nome; $object->natureza = $srp->natureza->descricao; foreach ($srp->getItems() as $item) { $row = $this->datagrid->addItem($item); } TForm::sendData('SrpFormView', $object); TTransaction::close(); } catch (Exception $e) { if ($e->getCode() == 23000) { new TMessage('error', '<b>Registro duplicado</b><br>Verifique os campos inseridos e tente novamente'); } else { if ($e->getCode() == 0) { new TMessage('error', '<b>Error</b> <br>' . $e->getMessage()); } else { new TMessage('error', '<b>Error Desconhecido</b> <br>Código: ' . $e->getCode()); } } // desfazer todas as operacoes pendentes TTransaction::rollback(); } }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_pessoa'); // creates a table $table_data = new TTable(); $table_contato = new TTable(); $notebook = new TNotebook(500, 250); // add the notebook inside the form $this->form->add($notebook); $notebook->appendPage('Dados Principais', $table_data); $notebook->appendPage('Contatos', $table_contato); // create the form fields $idpessoa = new TEntry('idpessoa'); $nome = new TEntry('nome'); $dtcadastro = new TDate('dtcadastro'); $dtnascimento = new TDate('dtnascimento'); $natureza = new TRadioGroup('natureza'); $idramoatividade = new TDBCombo('idramoatividade', 'sobcontrole', 'ramoatividade', 'idramoatividade', 'descricao'); $obs = new TText('obs'); // add field validators $nome->addValidation('Nome', new TRequiredValidator()); $dtcadastro->addValidation('Data Cadastro', new TRequiredValidator()); $dtnascimento->addValidation('Data Nascimento', new TRequiredValidator()); $idramoatividade->addValidation('Ramo de Atividade', new TRequiredValidator()); $natureza->addValidation('Natureza', new TRequiredValidator()); $itemNatureza = array(); $itemNatureza['F'] = 'Física'; $itemNatureza['J'] = 'Jurídica'; // add the combo options $natureza->addItems($itemNatureza); $natureza->setLayout('horizontal'); // define some properties for the form fields $idpessoa->setEditable(FALSE); $idpessoa->setSize(100); $nome->setSize(320); $obs->setSize(320); $dtcadastro->setSize(90); $dtnascimento->setSize(90); $natureza->setSize(70); $idramoatividade->setSize(120); // add a row for the field code $table_data->addRowSet(new TLabel('ID:'), array($idpessoa, new TLabel('Natureza:'), $natureza)); $table_data->addRowSet(new TLabel('Nome/Fantasia:'), $nome); $table_data->addRowSet(new TLabel('Data Cadastro:'), $dtcadastro); $table_data->addRowSet(new TLabel('Data Nascimento/Início:'), $dtnascimento); $table_data->addRowSet(new TLabel('Ramo de Atividade:'), $idramoatividade); $table_data->addRowSet(new TLabel('Observações:'), $obs); $row = $table_contato->addRow(); // adiciona linha $cell = $row->addCell(new TLabel('<b>Contatos</b>')); // adiciona celular na linha $cell->valign = 'top'; // define alinhamento $listacontatos = new TMultiField('listacontatos'); // cria multifield // com TDBSeekButton //$idtipocontato= new TDBSeekButton('idtipocontato', 'sobcontrole', $this->form->getName(), 'tipocontato', 'descricao', 'listacontatos_idtipocontato', 'listacontatos_descricaotipocontato'); // com TSeekButton /*$idtipocontato= new TSeekButton('idtipocontato'); $auxidtipocontato = new BuscaTipoContato; $auxaction= new TAction(array($auxidtipocontato,'onReload')); $idtipocontato->setAction($auxaction);*/ $idtipocontato = new TDBCombo('idtipocontato', 'sobcontrole', 'tipocontato', 'idtipocontato', 'descricao', 'descricao'); $descricaotipocontato = new \Adianti\Widget\Form\THidden('tipocontato->descricao'); //$descricaotipocontato->setEditable(false); $valorcontato = new TEntry('valorcontato'); $listacontatos->setClass('contato'); // define the returning class // colunas do multifield // coluna do ID do tipo de contato (1->email, 2->telefone, etc...) $listacontatos->addField('idtipocontato', 'ID: ', $idtipocontato, 40); // coluna da descricao do tipo de contato // desta forma o grid OK $listacontatos->addField('tipocontato->descricao', '', $descricaotipocontato, 200); // desta forma o TDBSeekButton fica OK. //$listacontatos->addField('descricaotipocontato', 'Descrição Tipo Contato: ', $descricaotipocontato, 200); // coluna com o valor do contato, número do telefone, celular, etc. $listacontatos->addField('descricao', 'Valor Contato: ', $valorcontato, 200); $listacontatos->setHeight(250); $row = $table_contato->addRow(); $row->addCell($listacontatos); // create an action button $button1 = new TButton('action1'); $button1->setAction(new TAction(array($this, 'onSave')), 'Salvar'); $button1->setImage('ico_save.png'); // create an action button (go to list) $button2 = new TButton('list'); $button2->setAction(new TAction(array('PessoaDataGrid', 'onReload')), 'Listar'); $button2->setImage('ico_datagrid.gif'); $button0 = new TButton('new'); $button0->setAction(new TAction(array($this, 'onClear')), 'Novo'); $button0->setImage('ico_new.png'); // define wich are the form fields $this->form->setFields(array($idpessoa, $nome, $dtcadastro, $dtnascimento, $natureza, $idramoatividade, $obs, $listacontatos, $button0, $button1, $button2)); $subtable = new TTable(); $row = $subtable->addRow(); $row->addCell($button0); $row->addCell($button1); $row->addCell($button2); // wrap the page content $vbox = new TVBox(); $vbox->add(new TXMLBreadCrumb('menu.xml', __CLASS__)); $vbox->add($this->form); $vbox->add($subtable); // add the form inside the page parent::add($vbox); }
public function onSave($param) { try { $this->form_requisicao->validate(); // validate form data $form_requisicao_data = $this->form_requisicao->getData(); $form_requisicao = TSession::getValue('form_requisicao'); $form_requisicao->numeroProcesso = $form_requisicao_data->numeroProcesso; $form_requisicao->emissao = $form_requisicao_data->emissao; $requisicao_itens = TSession::getValue('requisicao_itens'); if (!isset($requisicao_itens) || count($requisicao_itens) == 0) { new TMessage('error', 'Insira ao menos 1 item'); return; } TTransaction::open('saciq'); //TTransaction::setLogger(new \Adianti\Log\TLoggerTXT("c:\\array\\LOG".date("Ymd-His").".txt")); if ($requisicao_itens) { $id = isset($form_requisicao->id) ? $form_requisicao->id : NULL; $requisicao = new Requisicao($id); // create a new Sale $requisicao->clearParts(); $requisicao->numeroProcesso = $form_requisicao->numeroProcesso; $requisicao->emissao = TDate::date2us($form_requisicao->emissao); //if (!$requisicao->emissao){ // $requisicao->emissao = date("Y-m-d"); //} $requisicao->aprovado = 0; $requisicao->srp = new Srp(TSession::getValue("SRP_id")); foreach ($requisicao_itens as $item) { $item_requisicao = new Item($item->item_id); $item_requisicao->justificativa = $item->justificativa; $item_requisicao->quantidade = $item->quantidade; $item_requisicao->prazoEntrega = $item->prazoEntrega; $item_requisicao->quantidade = str_replace('.', '', $item->quantidade); $item_requisicao->quantidade = str_replace(',', '.', $item->quantidade); $requisicao->addItem($item_requisicao); // add the item to the Sale } $requisicao->store(); // store the Sale TSession::delValue('requisicao_itens'); TSession::delValue('form_requisicao'); TSession::delValue('SRP_id'); new TMessage('info', 'Requisição salva'); } TTransaction::close(); $this->onReload(); } catch (Exception $e) { if ($e->getCode() == 23000) { new TMessage('error', '<b>Registro duplicado</b><br>Verifique os campos inseridos e tente novamente'); } else { if ($e->getCode() == 0) { new TMessage('error', '<b>Error</b> <br>' . $e->getMessage()); } else { new TMessage('error', '<b>Error Desconhecido</b> <br>Código: ' . $e->getCode()); } } } }
/** * */ public function makeTDate($properties) { $widget = new TDate((string) $properties->{'name'}); $widget->setValue((string) $properties->{'value'}); $widget->setSize((int) $properties->{'width'}); $widget->setEditable((string) $properties->{'editable'}); if ((string) $properties->{'mask'}) { $widget->setMask((string) $properties->{'mask'}); } if (isset($properties->{'tip'})) { $widget->setTip((string) $properties->{'tip'}); } if (isset($properties->{'required'}) and $properties->{'required'} == '1') { $widget->addValidation((string) $properties->{'name'}, new TRequiredValidator()); } $this->fields[] = $widget; $this->fieldsByName[(string) $properties->{'name'}] = $widget; return $widget; }
public function onGenerate($param) { //var_dump($param); $this->B = 0; $this->I = 0; $this->U = 0; $this->HREF = ''; $data = $this->form->getData(); $id = $data->cessao_id; $this->pdf = new FPDF(); $this->pdf->AliasNbPages(); setlocale(LC_ALL, 'pt_BR', 'pt_BR.utf-8', 'pt_BR.utf-8', 'portuguese'); try { TTransaction::open('saciq'); $this->form->validate(); $cessao = new Cessao($id); $itens_list = $cessao->getItems(); if (count($itens_list) == 0) { new TMessage('error', 'Nenhum item encontrado na cessão'); $this->form->sendData('doc_cessao_form', $data); return; } $memorando = utf8_decode($data->memorando); $emissao = TDate::date2us($data->emissao); $repository = new TRepository('Campus'); $criteria = new TCriteria(); $criteria->add(new TFilter('sigla', '=', CAMPUS)); $campus_list = $repository->load($criteria); $campus = $campus_list[0]; $this->cidade = $campus->nome; $destino = strtoupper($data->campusNome); $this->gerente = $data->gerente; $this->diretor = $data->diretor; $emissao = strtotime($emissao); $mes = ucfirst(strftime('%B', $emissao)); $emissao = $this->cidade . ', ' . strftime(" %d de {$mes} de %Y.", $emissao); $srp = $cessao->srp->numeroSRP; $natureza = $cessao->srp->natureza->descricao; $nomeSrp = $cessao->srp->nome; //$this->pdf->Open(); $this->pdf->SetMargins(25, 20, 25); $this->pdf->setHeaderCallback(array($this, 'Header')); //$this->pdf->setFooterCallback(array($this, 'Footer')); $this->pdf->AddPage(); $this->pdf->SetFont('Times', '', 12); //$this->pdf->Cell(15); $this->pdf->Cell(0, 5, "{$memorando}", 0, 1); $this->pdf->Ln(10); $this->pdf->Cell(0, 5, $emissao, 0, 0, 'R'); $this->pdf->Ln(10); $this->pdf->Cell(0, 5, utf8_decode('À'), 0, 1); $this->pdf->Cell(0, 5, utf8_decode("GERÊNCIA ADMINISTRATIVA DO CAMPUS {$destino}")); $this->pdf->Ln(10); $this->pdf->SetFont('Times', 'B', 12); $this->pdf->MultiCell(0, 5, utf8_decode("ASSUNTO: CESSÃO DE QUANTITATIVO - SRP {$srp} - {$natureza} - {$nomeSrp}")); $this->pdf->SetFont('Times', '', 12); $this->pdf->Ln(15); $this->pdf->SetX(21); $this->WriteHTML(utf8_decode("1.Conforme solicitação, autorizamos a utilização do quantitativo abaixo referido," . "referente a estimativa do Câmpus Capivari para a <B>SRP {$srp} - {$natureza} - {$nomeSrp}</B>")); $this->pdf->Ln(10); //cabecalho da tabela $y = $this->pdf->GetY(); $x = $this->pdf->GetX(); $this->pdf->SetFont('Times', 'B', 12); $width = array(18, 107, 38); $this->pdf->MultiCell($width[0], 10, utf8_decode('ITEM'), 1, 'C'); $this->pdf->SetXY($x += $width[0], $y); $this->pdf->MultiCell($width[1], 10, utf8_decode("DESCRIÇÃO"), 1, 'C'); $this->pdf->SetXY($x += $width[1], $y); $this->pdf->MultiCell($width[2], 10, utf8_decode('QUANT.'), 1, 'C'); $this->pdf->SetFont('Times', '', 12); $this->pdf->ln(0); $y = $this->pdf->GetY(); $x = $this->pdf->GetX(); usort($itens_list, array("DocCessaoForm", "cmp")); //preencher a tabela foreach ($itens_list as $item) { $numeroItem = $item->numeroItem; $descricaoSumaria = substr($item->descricaoSumaria, 0, 80); $quantidade = $item->quantidade; $t1 = $this->pdf->GetStringWidth($descricaoSumaria); $tamanhoTexto = $t1; $tamanhoDesc = $width[1]; $qtdLinha = 1; $offset = 0; $atualSize = 0; while (true) { $pos = strpos($descricaoSumaria, ' ', $offset); if ($pos === FALSE) { while ($tamanhoTexto > $tamanhoDesc) { $qtdLinha++; $tamanhoTexto -= $tamanhoDesc; } break; } $textCompare = substr($descricaoSumaria, $offset, $pos - $offset); $textSize = $this->pdf->GetStringWidth($textCompare . ' '); if ($textSize + $atualSize > $tamanhoDesc) { $qtdLinha++; $tamanhoTexto -= $atualSize; $atualSize = 0; } else { $atualSize += $textSize; $offset = $pos + 1; } } if ($qtdLinha == 1) { $qtdLinha = 2; } $alturaLinha = 5 * $qtdLinha; if ($this->pdf->GetY() + $alturaLinha > 280) { $this->pdf->Cell(array_sum($width), 0, '', 'T'); $this->pdf->AddPage(); $y = $this->pdf->GetY(); $x = $this->pdf->GetX(); } $this->pdf->MultiCell($width[0], $alturaLinha, utf8_decode($numeroItem), 'LRT', 'C'); $this->pdf->SetXY($x += $width[0], $y); $this->pdf->MultiCell($width[1], 5, utf8_decode($descricaoSumaria), 'LRT', 'J'); $this->pdf->SetXY($x += $width[1], $y); $this->pdf->MultiCell($width[2], $alturaLinha, utf8_decode($quantidade), 'LRT', 'C'); $this->pdf->Ln(0); $y = $this->pdf->GetY(); $x = $this->pdf->GetX(); } $this->pdf->Cell(array_sum($width), 0, '', 'T'); if ($this->pdf->GetY() + $alturaLinha > 210) { $this->pdf->AddPage(); $this->ImprimiNoRodape = false; } else { $this->ImprimiNoRodape = true; } $this->Footer(); if (!file_exists("app/output/doc.pdf") or is_writable("app/output/doc.pdf")) { $this->pdf->Output("app/output/doc.pdf"); } else { throw new Exception('Permissão negada' . ': ' . "app/output/doc.pdf"); } parent::openFile('app/output/doc.pdf'); $this->form->sendData('doc_cessao_form', $data); TTransaction::close(); } catch (Exception $e) { if ($e->getCode() == 23000) { new TMessage('error', '<b>Registro duplicado</b><br>Verifique os campos inseridos e tente novamente'); } else { if ($e->getCode() == 0) { new TMessage('error', '<b>Error</b> <br>' . $e->getMessage()); } else { new TMessage('error', '<b>Error Desconhecido</b> <br>Código: ' . $e->getCode()); } } // desfazer todas as operacoes pendentes TTransaction::rollback(); } }
public function onSave($param) { try { $this->form_cessao->validate(); // validate form data $form_cessao_data = $this->form_cessao->getData(); $form_cessao = TSession::getValue('form_cessao'); $form_cessao->numeroCessao = $form_cessao_data->numeroCessao; $form_cessao->campusID = $form_cessao_data->campusID; $form_cessao->campusNome = $form_cessao_data->campusNome; $form_cessao->emissao = $form_cessao_data->emissao; $cessao_itens = TSession::getValue('cessao_itens'); if (!isset($cessao_itens) || count($cessao_itens) == 0) { new TMessage('error', 'Insira ao menos 1 item'); return; } TTransaction::open('saciq'); if ($cessao_itens) { $id = isset($form_cessao->id) ? $form_cessao->id : NULL; $cessao = new Cessao($id); // create a new Sale $cessao->clearParts(); $cessao->numeroCessao = $form_cessao->numeroCessao; $cessao->campus = new Campus($form_cessao->campusID); $cessao->emissao = TDate::date2us($form_cessao->emissao); //if (!$cessao->emissao){ // $cessao->emissao = date("Y-m-d"); //} $cessao->aprovado = 0; $cessao->srp = new Srp(TSession::getValue('SRP_id')); foreach ($cessao_itens as $item) { $item_cessao = new Item($item->item_id); $item_cessao->quantidade = $item->quantidade; $item_cessao->quantidade = str_replace('.', '', $item->quantidade); $item_cessao->quantidade = str_replace(',', '.', $item->quantidade); $cessao->addItem($item_cessao); // add the item to the Sale } $cessao->store(); // store the Sale TSession::delValue('cessao_itens'); TSession::delValue('form_cessao'); TSession::delValue('SRP_id'); new TMessage('info', 'Cessão salva'); } TTransaction::close(); $this->onReload(); } catch (Exception $e) { if ($e->getCode() == 23000) { new TMessage('error', '<b>Registro duplicado</b><br>Verifique os campos inseridos e tente novamente'); } else { if ($e->getCode() == 0) { new TMessage('error', '<b>Error</b> <br>' . $e->getMessage()); } else { new TMessage('error', '<b>Error Desconhecido</b> <br>Código: ' . $e->getCode()); } } } }
public function rowFormat($date, $object, $row) { if ($object->estaVencida(TDate::date2us($date))) { $row->style = "background: #FFDADE"; } return $date; }
function onReload($param) { $this->dg_UltImportacao->clear(); $this->dg_UltRequisicao->clear(); $this->dg_UltCesssao->clear(); $this->dg_SRPAVencer->clear(); try { TTransaction::open('saciq'); //TTransaction::setLogger(new TLoggerTXT("c:\\array\\LOG".date("Ymd-His").".txt")); //ultimas importações $criteriaUI = new TCriteria(); $param['order'] = 'id'; $param['direction'] = 'desc'; $criteriaUI->setProperties($param); $criteriaUI->setProperty('limit', 8); $repositoryUI = new TRepository('Srp'); $srps = $repositoryUI->load($criteriaUI, false); foreach ($srps as $srp) { $srp->validade = TDate::date2br($srp->validade); $this->dg_UltImportacao->addItem($srp); } //ultimas Requisições $criteriaUR = new TCriteria(); $param['order'] = 'emissao'; $param['direction'] = 'desc'; $criteriaUR->setProperties($param); $criteriaUR->setProperty('limit', 8); $repositoryUR = new TRepository('Requisicao'); $requisicoes = $repositoryUR->load($criteriaUR, false); foreach ($requisicoes as $requisicao) { $requisicao->numeroSRP = $requisicao->srp->numeroSRP; $requisicao->aprovado = $requisicao->aprovado == 0 ? 'Não' : 'Sim'; $requisicao->emissao = TDate::date2br($requisicao->emissao); $this->dg_UltRequisicao->addItem($requisicao); } //Atas a vencer $criteriaAV = new TCriteria(); $param['order'] = 'validade'; $param['direction'] = 'asc'; $criteriaAV->setProperties($param); $criteriaAV->setProperty('limit', 8); $criteriaAV->add(new TFilter('validade', '>=', date("Y-m-d"))); $repositoryAV = new TRepository('Srp'); $atasAVencer = $repositoryAV->load($criteriaAV, false); foreach ($atasAVencer as $atas) { $atas->validade = TDate::date2br($atas->validade); $this->dg_SRPAVencer->addItem($atas); } //ultimas Cessões $criteriaUC = new TCriteria(); $param['order'] = 'emissao'; $param['direction'] = 'desc'; $criteriaUC->setProperties($param); $criteriaUC->setProperty('limit', 8); $repositoryUC = new TRepository('Cessao'); $cessoes = $repositoryUC->load($criteriaUC, false); foreach ($cessoes as $cessao) { $cessao->numeroSRP = $cessao->srp->numeroSRP; $cessao->aprovado = $cessao->aprovado == 0 ? 'Não' : 'Sim'; $cessao->emissao = TDate::date2br($cessao->emissao); $this->dg_UltCesssao->addItem($cessao); } $this->loaded = true; TTransaction::close(); } catch (Exception $e) { if ($e->getCode() == 23000) { new TMessage('error', '<b>Registro duplicado</b><br>Verifique os campos inseridos e tente novamente'); } else { if ($e->getCode() == 0) { new TMessage('error', '<b>Error</b> <br>' . $e->getMessage()); } else { new TMessage('error', '<b>Error Desconhecido</b> <br>Código: ' . $e->getCode()); } } // desfazer todas as operacoes pendentes TTransaction::rollback(); } }