{parts/gtag_head.html} {parts/gtag_body.html}
Mês do Programador

Vamos comemorar juntos o seu mês.
Aproveite condições especiais.

Cursos, combos e assinaturas com desconto exclusivo para comemorar o Dia do Programador. Tempo limitado.

Promoção válida de 14/09 à 25/09

De 30% Até50% OFF
Cards, formatar valor R$ em um ítem do setItemTemplate. Prezados amigos, boa tarde. Estou fazendo uma tela simples utilizando Cards na minha aplicação. A dificuldade é formatar em R$ um atributo numérico (cad_veiculo_valor_prev_venda) que vem do banco para o SetItemTemplate. O Exemplo disponibilizado no tutor: https://framework.adianti.me//tutor/index.php?class=ProductCardView não trata esta questão. Sou novo no Adianti e, apesar de estar gos...
AT
Cards, formatar valor R$ em um ítem do setItemTemplate.  
Prezados amigos, boa tarde.
Estou fazendo uma tela simples utilizando Cards na minha aplicação. A dificuldade é formatar em R$ um atributo numérico (cad_veiculo_valor_prev_venda) que vem do banco para o SetItemTemplate.
O Exemplo disponibilizado no tutor: https://framework.adianti.me//tutor/index.php?class=ProductCardView não trata esta questão.
Sou novo no Adianti e, apesar de estar gostando muito do framework as vezes tenho a impressão que o mesmo simplifica com maestrica questões complexas e complica as vezes coisas simples.
Se alguém puder ajudar agradeço.
Segue o código.

 
  1. <?php
  2. class Cad_VeiculosCardEstoqueR extends TPage
  3. {
  4. private $form, $cards, $datagrid, $pageNavigation;
  5. use Adianti\Base\AdiantiStandardCollectionTrait;
  6. /**
  7. * Class constructor
  8. * Creates the page, the form and the listing
  9. */
  10. public function __construct()
  11. {
  12. parent::__construct();
  13. $this->setDatabase('sgc_v2_v76');
  14. $this->setActiveRecord('Cad_VeiculosCreate');
  15. $this->addFilterField('description');
  16. // creates the form
  17. // $this->form = new BootstrapFormBuilder('form_VeiculosCardEstoqueR');
  18. // $this->form->setFormTitle(_t('Cars Veículos'));
  19. // creates the Card View
  20. $this->cards = new TCardView;
  21. $this->cards->setContentHeight(150);
  22. //$this->cards->style = 'min-width: 100px';
  23. $this->cards->setTitleAttribute('Veículo: {cad_veiculo_nome}');
  24. $this->setCollectionObject($this->cards);
  25. $this->cards->setItemTemplate('<div style="float:left;width:50%;padding-right:10px">
  26. <b>Código: </b> {id} <br>
  27. <b>Km: </b> {cad_veiculo_km} <br>
  28. <b>Ano Fabric.:</b> {cad_veiculo_ano_fabricacao} <br>
  29. <b>Modelo:</b> {cad_veiculo_ano_modelo} <br>
  30. <b>Preço R$</b> {cad_veiculo_valor_prev_venda}
  31. </div>
  32. ');
  33. //$edit_action = new TAction(['ProductForm', 'onEdit'], ['id'=> '{id}']);
  34. //$delete_action = new TAction([$this, 'onDelete'], ['id'=> '{id}', 'register_state' => 'false']);
  35. //$this->cards->addAction($edit_action, 'Edit', 'far:edit bg-blue');
  36. //$this->cards->addAction($delete_action, 'Delete', 'far:trash-alt bg-red');
  37. // creates the page navigation
  38. $this->pageNavigation = new TPageNavigation;
  39. $this->pageNavigation->setAction(new TAction([$this, 'onReload']));
  40. // creates the page structure using a table
  41. $vbox = new TVBox;
  42. $vbox->style = 'width: 100%';
  43. $vbox->add(new TXMLBreadCrumb('menu.xml', __CLASS__));
  44. //$vbox->add($this->form); // add a row to the form
  45. $vbox->add(TPanelGroup::pack('', $this->cards, $this->pageNavigation)); // add a row for page navigation
  46. // add the table inside the page
  47. parent::add($vbox);
  48. }
  49. }
  50. ?>

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (1)


FS

Olá.. Tudo Bem!
Basta criar um método get na classe model da sua tabela formatando
o campo desejado.. veja:

 
  1. <?php
  2. public function get_precoBr()
  3. {
  4. return number_format($this->preco, 2, ",", ".");
  5. }
  6. ?>


Agora é só usar o nome do método {precoBr} no seu template!


Editado 10/01/2024 (há 2 anos) - Ver alterações