예제 #1
1
 function __construct()
 {
     parent::__construct();
     //cria os containers
     $this->form_requisicao = new TForm('form_requisicao');
     $this->form_requisicao->class = 'tform';
     $this->form_itens = new TForm('form_itens');
     $this->form_itens->class = 'tform';
     $table_requisicao = new TTable();
     $table_requisicao->width = '100%';
     $table_itens = new TTable();
     $table_itens->width = '100%';
     //empacota os dados
     $this->form_requisicao->add($table_requisicao);
     $this->form_itens->add($table_itens);
     //campos da requisicao;
     $numeroSRP = new TSeekButton('numeroSRP');
     $nome = new TEntry('nome');
     $numeroProcessoOrigem = new TEntry('numeroProcessoOrigem');
     $uasg = new TEntry('uasg');
     $validadeAta = new TEntry('validade');
     $numeroProcesso = new TEntry('numeroProcesso');
     $emissao = new TDate('emissao');
     //campos do itens
     $numeroItem = new TSeekButton('numeroItem');
     $item_id = new THidden('item_id');
     $descricaoSumaria = new TEntry('descricaoSumaria');
     $valorUnitario = new TEntry('valorUnitario');
     $quantidade = new TEntry('quantidade');
     $prazoEntrega = new TEntry('prazoEntrega');
     $justificativa = new TEntry('justificativa');
     $addItem = new TButton('addItem');
     $save = new TButton('save');
     $new = new TButton('new');
     $list = new TButton('list');
     //ações dos campos
     $numeroSRP->setAction(new TAction(array(new SrpSeekRequisicao(), 'onReload')));
     $numeroProcesso->setExitAction(new TAction(array($this, 'onExitNumeroProcesso')));
     $emissao->setExitAction(new TAction(array($this, 'onExitEmissao')));
     $numeroItem->setAction(new TAction(array(new ItemSeekRequisicao(), 'onReload')));
     $addItem->setAction(new TAction(array($this, 'onAddItem')), 'Adicionar');
     $addItem->setImage('fa:plus-square-o');
     $save->setAction(new TAction(array($this, 'onSave')), 'Salvar');
     $save->setImage('ico_save.png');
     $new->setAction(new TAction(array($this, 'onEdit')), 'Novo');
     $new->setImage('ico_new.png');
     $list->setAction(new TAction(array('RequisicaoList', 'onReload')), 'Voltar para listagem');
     $list->setImage('ico_datagrid.png');
     //$onProductChange = new TAction(array($this, 'onProductChange'));
     //$item_id->setExitAction($onProductChange);
     $quantidade->setExitAction(new TAction(array($this, 'onValidaQuantidade')));
     //validadores
     $numeroSRP->addValidation('Nº SRP', new TRequiredValidator());
     $emissao->addValidation('Emissão', new TRequiredValidator());
     $numeroItem->addValidation('Item', new TRequiredValidator());
     $valorUnitario->addValidation('Preço', new TRequiredValidator());
     $quantidade->addValidation('Quantidade', new TRequiredValidator());
     $quantidade->addValidation('Quantidade', new TMinValueValidator(), array(1));
     $quantidade->addValidation('Quantidade', new TMaxLengthValidator(), array(11));
     $justificativa->addValidation('Justificativa', new TRequiredValidator());
     $justificativa->addValidation('Justificativa', new TMaxLengthValidator(), array(100));
     $prazoEntrega->addValidation('Prazo de entrega', new TRequiredValidator());
     $prazoEntrega->addValidation('Prazo de entrega', new TMaxLengthValidator(), array(20));
     $numeroProcesso->addValidation('Nº Processo', new TRequiredValidator());
     $numeroProcesso->addValidation('Nº Processo', new TMaxLengthValidator(), array(30));
     //outras propriedades
     $descricaoSumaria->setEditable(false);
     $nome->setEditable(false);
     $numeroProcessoOrigem->setEditable(false);
     $uasg->setEditable(false);
     $validadeAta->setEditable(false);
     $valorUnitario->setEditable(false);
     $numeroSRP->setSize(80);
     $numeroSRP->setMaxLength(10);
     $emissao->setProperty('style', 'margin-right: 0px;', false);
     $nome->setSize(300);
     $nome->setProperty('style', 'margin-right: 10px', false);
     $numeroProcessoOrigem->setSize(160);
     $uasg->setSize(70);
     $validadeAta->setSize(85);
     $numeroProcesso->setMaxLength(30);
     $numeroProcesso->setTip('Número do processo gerado no SIGA');
     $numeroItem->setSize(60);
     $numeroItem->setMaxLength(11);
     $descricaoSumaria->setSize(490);
     $descricaoSumaria->setProperty('style', 'margin-right: 10px', false);
     $prazoEntrega->setSize(90);
     $justificativa->setSize(400);
     $justificativa->setMaxLength(100);
     $emissao->setSize(90);
     $emissao->setMask('dd/mm/yyyy');
     $emissao->setValue(date('d/m/Y'));
     $validadeAta->setMask('dd/mm/yyyy');
     $quantidade->class = 'frm_number_only';
     $quantidade->setMaxLength(11);
     $prazoEntrega->setValue('60 Dias');
     $prazoEntrega->setMaxLength(20);
     //$addItem->setProperty('style', 'margin: 0 0 10px 10px;', false);
     $row = $table_requisicao->addRow();
     $row->class = 'tformtitle';
     // CSS class
     $cell = $row->addCell(new TLabel('Requisição de quantitativo'));
     $cell->colspan = 4;
     $row = $table_requisicao->addRow();
     $row->addCell(new TLabel('Nº SRP:'))->width = '150px';
     $row->addCell($numeroSRP);
     $row->addCell(new TLabel('Nome Licitação:'))->width = '150px';
     $row->addCell($nome);
     $table_requisicao->addRowSet(new TLabel('Proc. Orig:'), $numeroProcessoOrigem, new TLabel('UASG:'), $uasg);
     $table_requisicao->addRowSet(new TLabel('Validade da Ata:'), $validadeAta, new TLabel('Nº Processo:'), $numeroProcesso);
     $table_requisicao->addRowSet(new TLabel('Data Emissão:'), $emissao);
     $row = $table_itens->addRow();
     $row->class = 'tformtitle';
     // CSS class
     $cell = $row->addCell(new TLabel('Itens'));
     $cell->colspan = 4;
     $row = $table_itens->addRow();
     $row->addCell(new TLabel('Item:'));
     $box = new THBox();
     $box->add($numeroItem);
     $box->add($descricaoSumaria)->style = 'width : 75%;display:inline-block;';
     $row->addCell($box);
     //->style = 'width : 85%';
     $table_itens->addRowSet($item_id);
     $table_itens->addRowSet(new TLabel('Preço:'), $valorUnitario);
     $table_itens->addRowSet(new TLabel('Quantidade:'), $quantidade);
     $table_itens->addRowSet(new TLabel('Prazo de entrega:'), $prazoEntrega);
     $table_itens->addRowSet(new TLabel('Justificativa:'), $justificativa);
     $row = $table_itens->addRow();
     $row->class = 'tformaction';
     $row->addCell($addItem)->colspan = 2;
     //$table_itens->addRowSet($addItem);
     parent::include_css('app/resources/custom-table.css');
     $this->datagrid = new TDataGrid();
     $this->datagrid->style = 'width: 100%';
     $this->datagrid->class = 'tdatagrid_table customized-table';
     $this->datagrid->setHeight(175);
     $this->datagrid->makeScrollable();
     $this->datagrid->disableDefaultClick();
     $GnumeroItem = new TDataGridColumn('numeroItem', 'Item', 'center', 50);
     $GdescricaoSumaria = new TDataGridColumn('descricaoSumaria', 'Descrição', 'left', 230);
     $Gquantidade = new TDataGridColumn('quantidade', 'Quantidade', 'right', 110);
     $GvalorUnitario = new TDataGridColumn('valorUnitario', 'Preço', 'right', 110);
     $Gtotal = new TDataGridColumn('total', 'Total', 'right', 160);
     //transformers
     $GvalorUnitario->setTransformer(array($this, 'formatValor'));
     $Gtotal->setTransformer(array($this, 'formatValor'));
     $edit = new TDataGridAction(array($this, 'onEditItem'));
     $edit->setLabel('Editar');
     $edit->setImage('ico_edit.png');
     $edit->setField('numeroItem');
     $delete = new TDataGridAction(array($this, 'onDeleteItem'));
     $delete->setLabel('Deletar');
     $delete->setImage('ico_delete.png');
     $delete->setField('numeroItem');
     $this->datagrid->addAction($edit);
     $this->datagrid->addAction($delete);
     $this->datagrid->addColumn($GnumeroItem);
     $this->datagrid->addColumn($GdescricaoSumaria);
     $this->datagrid->addColumn($Gquantidade);
     $this->datagrid->addColumn($GvalorUnitario);
     $this->datagrid->addColumn($Gtotal);
     $this->datagrid->createModel();
     $this->form_requisicao->setFields(array($numeroSRP, $nome, $numeroProcessoOrigem, $uasg, $validadeAta, $numeroProcesso, $emissao, $new, $save, $list));
     $this->form_itens->setFields(array($item_id, $numeroItem, $descricaoSumaria, $valorUnitario, $quantidade, $prazoEntrega, $justificativa, $addItem));
     $hbox = new THBox();
     $hbox->add($save);
     $hbox->add($new);
     $hbox->add($list);
     $table_grid = new TTable();
     $table_grid->style = 'width: 100%;border-spacing: 0px;';
     $table_grid->addRowSet($this->datagrid);
     $row = $table_grid->addRow();
     $row->class = 'tformaction';
     // CSS class
     $row->addCell($hbox)->colspan = 2;
     $vbox = new TVBox();
     $vbox->add($this->form_requisicao);
     $vbox->add($this->form_itens);
     $vbox->add($table_grid);
     $vbox->add(new TLabel(' '));
     parent::add($vbox);
 }
예제 #2
0
 /**
  * Class constructor
  * Creates the page and the registration form
  */
 function __construct()
 {
     parent::__construct();
     // creates the form
     $this->form = new TForm('form_Cessao_report');
     $this->form->class = 'tform';
     // CSS class
     $this->form->style = 'width: 500px';
     // creates the table container
     $table = new TTable();
     $table->width = '100%';
     // add the table inside the form
     $this->form->add($table);
     // define the form title
     $row = $table->addRow();
     //Set( new TLabel('Relatório de Cessão'), '', '','', '' )->class = 'tformtitle';
     $row->class = 'tformtitle';
     $row->addCell(new TLabel('Relatório de Cessão'))->colspan = 2;
     // create the form fields
     $numeroCessaoI = new TEntry('numeroCessaoI');
     $numeroCessaoF = new TEntry('numeroCessaoF');
     $emissaoI = new TDate('emissaoI');
     $emissaoF = new TDate('emissaoF');
     $aprovado = new TRadioGroup('aprovado');
     // define the sizes
     $numeroCessaoI->setSize(100);
     $numeroCessaoF->setSize(100);
     $emissaoI->setSize(85);
     $emissaoI->setProperty('style', 'margin-right : 0px');
     $emissaoF->setSize(85);
     $emissaoF->setProperty('style', 'margin-right : 0px');
     //$aprovado->setSize(90);
     //mask
     $emissaoI->setMask('dd/mm/yyyy');
     $emissaoF->setMask('dd/mm/yyyy');
     $emissaoF->setValue(date('d/m/Y'));
     //$emissaoI->setNumericMask(0, '', '');
     // validations
     $aprovado->addValidation('Aprovado', new TRequiredValidator());
     $emissaoF->addValidation('Emissão - Até', new TDateValidator(), array('dd/mm/yyyy'));
     // add one row for each form field
     $table->addRowSet(new TLabel('Nº Cessão'), array($numeroCessaoI, new TLabel('Até'), $numeroCessaoF));
     $table->addRowSet(new TLabel('Emissão'), array($emissaoI, new TLabel('Até'), $emissaoF));
     $row = $table->addRow();
     //Set( new TLabel('Aprovado:'), $aprovado );
     $row->addCell(new TLabel('Aprovado:'));
     $row->addCell($aprovado);
     $this->form->setFields(array($numeroCessaoI, $numeroCessaoF, $emissaoI, $emissaoF, $aprovado));
     $aprovado->addItems(array('1' => 'Sim', '0' => 'Não', '%' => 'Todos'));
     $aprovado->setValue('%');
     $aprovado->setLayout('horizontal');
     $generate_button = TButton::create('generate', array($this, 'onGenerate'), _t('Generate'), 'ico_apply.png');
     $this->form->addField($generate_button);
     // add a row for the form action
     $table->addRowSet($generate_button, '')->class = 'tformaction';
     $container = new TTable();
     $container->addRow()->addCell(new TXMLBreadCrumb('menu.xml', __CLASS__));
     $container->addRow()->addCell($this->form);
     parent::add($container);
 }
예제 #3
0
 /**
  * 
  */
 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;
 }
예제 #4
0
 function __construct()
 {
     parent::__construct();
     $this->form = new TForm('doc_cessao_form');
     $this->form->style = 'width : 500px;';
     $this->form->class = 'tform';
     $table = new TTable();
     $table->width = '100%';
     $this->form->add($table);
     $row = $table->addRow();
     $row->class = 'tformtitle';
     // CSS class
     $row->addCell(new TLabel('Gerar Documentos da Cessão'))->colspan = 2;
     // cria os campos do formulário
     $memorando = new TEntry('memorando');
     //$cidade = new TEntry('cidade');
     $emissao = new TDate('emissao');
     $campusID = new TEntry('campusID');
     //TDBSeekButton('campusID', 'saciq', 'doc_cessao_form', 'Campus', 'nome', 'campusID', 'campusNome');
     $campusNome = new TEntry('campusNome');
     $gerente = new TEntry('gerente');
     $diretor = new TEntry('diretor');
     $cessao_id = new THidden('cessao_id');
     // define the sizes
     $memorando->setSize(300);
     //$cidade->setSize(200);
     $emissao->setSize(90);
     $emissao->setProperty('style', 'margin-right : 0px');
     $campusID->setSize(50);
     $campusID->setEditable(false);
     $campusNome->setSize(226);
     $campusNome->setEditable(false);
     $gerente->setSize(300);
     $diretor->setSize(300);
     //mascara
     $emissao->setMask('dd/mm/yyyy');
     $emissao->setValue(date('d/m/Y'));
     //validadores
     $memorando->addValidation('Memorando', new TRequiredValidator());
     $memorando->addValidation('Memorando', new TMaxLengthValidator(), array(70));
     $emissao->addValidation('Emissão', new TRequiredValidator());
     $campusID->addValidation('Destino', new TRequiredValidator());
     $gerente->addValidation('Gerente Administrativo(a)', new TRequiredValidator());
     $gerente->addValidation('Gerente Administrativo(a)', new TMaxLengthValidator(), array(70));
     $diretor->addValidation('Diretor(a) Geral', new TRequiredValidator());
     $diretor->addValidation('Diretor(a) Geral', new TMaxLengthValidator(), array(70));
     $memorando->setTip('Descrição do Memorando que aparecerá no início do documento.');
     $gerente->setTip('Nome do gerente em exercício');
     $diretor->setTip('Nome do diretor geral em exercício');
     $value = TSession::getValue('doc_cessao_form_cessao_id');
     if (isset($value)) {
         $cessao_id->setValue($value);
     }
     // add one row for each form field
     $table->addRowSet(new TLabel('Memorando:'), $memorando);
     //$table->addRowSet(new TLabel('Cidade:'), $cidade);
     $table->addRowSet(new TLabel('Emissão:'), $emissao);
     //$table->addRowSet(new TLabel('Destino:'), $destino);
     //$row = $table->addRow();
     $box = new THBox();
     $box->add($campusID);
     $box->add($campusNome)->style = 'width: 75%; display : inline-block;';
     //$row->addCell($box)->colspan = 2;
     $table->addRowSet(new TLabel('Destino:'), $box);
     $table->addRowSet(new TLabel('Gerente Administrativo(a):'), $gerente);
     $table->addRowSet(new TLabel('Diretor(a):'), $diretor);
     $table->addRowSet($cessao_id);
     $this->form->setFields(array($memorando, $emissao, $campusID, $campusNome, $gerente, $diretor, $cessao_id));
     // keep the form filled during navigation with session data
     $this->form->setData(TSession::getValue('Cessao_filter_data'));
     // create two action buttons to the form
     $generate_button = TButton::create('generate', array($this, 'onGenerate'), 'Gerar', 'fa:file-pdf-o');
     $back_button = TButton::create('back', array('DocCessaoList', 'onReload'), 'Voltar', 'ico_back.png');
     //$new_button  = TButton::create('new',  array('CessaoForm', 'onEdit'), 'Novo', 'ico_new.png');
     $this->form->addField($generate_button);
     $this->form->addField($back_button);
     $buttons_box = new THBox();
     $buttons_box->add($generate_button);
     $buttons_box->add($back_button);
     // add a row for the form action
     $row = $table->addRow();
     $row->class = 'tformaction';
     // CSS class
     $row->addCell($buttons_box)->colspan = 2;
     // create the page container
     //$container = TVBox::pack($this->form);
     parent::add($this->form);
 }
예제 #5
0
 function __construct()
 {
     parent::__construct();
     parent::include_css('app/resources/custom-table.css');
     //criar o form
     $this->form = new TForm('form_consulta_srp');
     $this->form->class = 'tform';
     //cria a tabela
     $table = new TTable();
     $table->width = '100%';
     $this->form->add($table);
     //adiciona uma linha na tabela para o titulo
     $row = $table->addRow();
     $row->class = 'tformtitle';
     $row->addCell(new TLabel('Consulta SRP'))->colspan = 2;
     // cria os campos do formulario
     $numeroSRP = new TEntry('numeroSRP');
     $numeroIRP = new TEntry('numeroIRP');
     $numeroProcesso = new TEntry('numeroProcesso');
     $uasg = new TEntry('uasg');
     $validade = new TDate('validade');
     $nome = new TEntry('nome');
     // define os tamanhos
     $numeroSRP->setSize(70);
     $numeroIRP->setSize(70);
     $numeroProcesso->setSize(150);
     $uasg->setSize(70);
     $validade->setSize(100);
     $validade->setProperty('style', 'margin-right : 0px');
     $nome->setSize(400);
     $validade->setMask('dd/mm/yyyy');
     // adiciona uma linha na tabela para cada campo
     $table->addRowSet(new TLabel('Nº SRP:'), $numeroSRP);
     $table->addRowSet(new TLabel('Nº IRP:'), $numeroIRP);
     $table->addRowSet(new TLabel('Proc. Orig.:'), $numeroProcesso);
     $table->addRowSet(new TLabel('Nome:'), $nome);
     $table->addRowSet(new TLabel('UASG:'), $uasg);
     $table->addRowSet(new TLabel('Validade:'), $validade);
     $this->form->setFields(array($numeroSRP, $numeroIRP, $numeroProcesso, $uasg, $validade, $nome));
     // manter o formulario preenchido durante navegação com os dados da sessao
     $this->form->setData(TSession::getValue('Srp_filter_data'));
     //cria o botão de ação
     $find_button = TButton::create('find', array($this, 'onSearch'), 'Consultar', 'ico_find.png');
     $this->form->addField($find_button);
     // adiciona uma linha para a acao do formulario
     $row = $table->addRow();
     $row->class = 'tformaction';
     // CSS class
     $row->addCell($find_button)->colspan = 2;
     // cria o datagrid
     $this->datagrid = new TDataGrid();
     $this->datagrid->class = 'tdatagrid_table customized-table';
     $this->datagrid->setHeight(320);
     // cria as colunas do datagrid
     $numeroSRP = new TDataGridColumn('numeroSRP', 'Nº SRP', 'left', 70);
     $numeroIRP = new TDataGridColumn('numeroIRP', 'Nº IRP', 'left', 70);
     $numeroProcesso = new TDataGridColumn('numeroProcesso', 'Proc. Orig.', 'left', 150);
     $uasg = new TDataGridColumn('uasg', 'UASG', 'left', 50);
     $validade = new TDataGridColumn('validade', 'Validade', 'left', 100);
     $nome = new TDataGridColumn('nome', 'Nome', 'left', 300);
     $validade->setTransformer(array($this, 'rowFormat'));
     // adiciona as colunas ao datagrid
     $this->datagrid->addColumn($numeroSRP);
     $this->datagrid->addColumn($numeroIRP);
     $this->datagrid->addColumn($numeroProcesso);
     $this->datagrid->addColumn($nome);
     $this->datagrid->addColumn($uasg);
     $this->datagrid->addColumn($validade);
     $srpViewAction = new TDataGridAction(array('SrpFormView', 'onViewSrp'));
     $srpViewAction->setLabel('Itens');
     $srpViewAction->setImage('fa:th-list');
     $srpViewAction->setField('id');
     $this->datagrid->addAction($srpViewAction);
     // cria o modelo no datagrid
     $this->datagrid->createModel();
     // cria o navegador de pagina
     $this->pageNavigation = new TPageNavigation();
     $this->pageNavigation->setAction(new TAction(array($this, 'onReload')));
     $this->pageNavigation->setWidth($this->datagrid->getWidth());
     $container = new TTable();
     $container->addRow()->addCell(new TXMLBreadCrumb('menu.xml', __CLASS__));
     $container->addRow()->addCell($this->form);
     $container->addRow()->addCell($this->datagrid);
     $container->addRow()->addCell($this->pageNavigation);
     parent::add($container);
 }