Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Pedroalves

problema no angularjs

Recommended Posts

não estou  a conseguir por a mostrar os dados de uma tabela

<!DOCTYPE html>
<html ng-app="myApp" lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <meta name="description" content="Game">
    <meta name="author" content="Pedro Alves">
    <link rel="icon" href="../favicon.ico">
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
<script src="dist/js/mapa.js"></script> 
    <title>Game</title>

    <!-- Bootstrap core CSS -->
    <link href="dist/css/bootstrap.min.css" rel="stylesheet">
<link href="dist/css/menu.css" rel="stylesheet" type="text/css">
<script src="dist/js/modernizr.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<script src="dist/js/ui-bootstrap-tpls-0.10.0.min.js"></script>

<script type="text/javascript" src="dist/js/shCore.js"></script> 
<script type="text/javascript" src="dist/js/shBrushXml.js"></script> 
<script type="text/javascript" src="dist/js/shBrushJScript.js"></script>

    <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
    

    <!-- Just for debugging purposes. Don't actually copy these 2 lines! -->
    <!--[if lt IE 9]><script src="../../assets/js/ie8-responsive-file-warning.js"></script><![endif]-->
    <script src="dist/js/ie-emulation-modes-warning.js"></script>

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
</head>
  <body>
  	<?php
require_once('configurations/Database.php');
?>
  <div ng-controller="customersCrtl" class="container"  align="left" style="width:100%;height:800px;">
       <div class="row">
    <div class="col-md-2">PageSize:
    		<div class="input-group number-spinner">
				<span class="input-group-btn data-dwn">
					<button class="btn btn-default btn-info" data-dir="dwn"><span class="glyphicon glyphicon-minus"></span></button>
				</span>
				<input type="text" class="form-control text-center" style="width:50px" value="1" min="1" max="20">
				<span class="input-group-btn data-up">
					<button class="btn btn-default btn-info" data-dir="up"><span class="glyphicon glyphicon-plus"></span></button>
				</span>
			</div>
        <!--select ng-model="entryLimit" class="form-control">
            <option>5</option>
            <option>10</option>
            <option>20</option>
            <option>50</option>
            <option>100</option>
        </select-->
    </div>
    <div class="col-md-3" >Filter:
        
        <!--input type="text" ng-model="search" ng-change="filter()" placeholder="Filter" class="form-control" /-->
    </div>
    <div class="col-md-4">
      <h5>Filtered {{ filtered.length }} of {{ totalItems}} total Empresas</h5>
    </div>
</div>
     
<br/>
<div class="row">
	
    <div class="col-md-12" ng-show="filteredItems > 0">
        <table class="table table-striped table-bordered">
        
        <thead >
         <th>Nome</th>
        <th>Descricao</th>
        <th>Quantidade</th>
       <th>Preco Sem Iva</th>
       <th>Descontos</th>
        <th>IVA</th>
         <th>Valor do Desconto</th>
 <th>Valor do IVA</th>         
   <th>Preço TOTAL</th>       
    <th>Ver</th>
        </thead>
        <tbody ng-init="get_product()">
          
          <tr ng-repeat="data in filtered = (list | filter:search | orderBy : predicate :reverse) | startFrom:(currentPage-1)*entryLimit | limitTo:entryLimit">
         
           </tr>
             <tr>
         
      			<td style="color:#000000">{{data.nome}}</td>
                <!--td>{{data.descricao}}</td>
                <td>{{data.quantidade}}</td>
                <td>{{data.precosiva}}</td>
                  <td>{{data.descontos}}</td>
                    <td>{{data.iva}}</td>
                     <td>{{data.valordesc}}</td>
                    <td>{{data.valoriva}}</td>
                    <td>{{data.precototal}}</td-->
                 
			    
               <td> <button class="btn" ng-click="prod_espiar(data.id)">
      <span class="glyphicon glyphicon-pencil"></span>&nbsp;&nbsp;Selecionar
      </button>
      </td>
            
            </tr>
        </tbody>
        </table>
 
    </div>
   <div class="col-md-12" ng-show="filteredItems == 0">
        <div class="col-md-12">
            <h4>Nenhum projecto Adecionado</h4>
        </div>
    </div>
 
  
    
</div> 
  </div>


  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script src="dist/js/bootstrap.min.js"></script>
    <!-- Just to make our placeholder images work. Don't actually copy the next line! -->
    <script src="dist/js/holder.min.js"></script>
   
    <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
    <script src="dist/js/ie10-viewport-bug-workaround.js"></script>
    
  
      <script src="dist/js/bootstrapValidator.js"></script>
   <script src="dist/js/bootstrapValidator.min.js"></script>
    
  </body>
</html>
require_once ('configurations/Database.php');
//Incluir definicoes de acesso a BD

// algumas funcoes

 switch($_GET['action'])  {
  //  case 'add_product' :
    //        add_product();
      //      break;

    case 'get_product' :
            get_product();
            break;

  /*  case 'edit_product' :
            edit_product();
           break;
*/
    ///case 'delete_product' :              
       //     delete_product();
         //   break;

   // case 'update_product' :
     //       update_product();
       //     break;
}
function get_product() {    
$link = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);
if (!$link) {
	die('Falha de ligacao a BD: ' . mysql_error());
}
/*$qry="select distinct c.nome,c.descricao,c.texto,c.categoria from  projecto c order by c.idprojecto";
$result = $link -> query($qry);
 
$arr = array();
if($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        $arr[] = $row;
    }
}else die("ERRO");
# JSON-encode the response
$json_response = json_encode($arr);
 
// # Return the response
echo $json_response;
*/
//$qry="select distinct c.nome,c.descricao,c.texto,c.categoria from  projecto c order by c.idprojecto";
  //$qry ="SELECT nome FROM servicos";
 // where id_empresa='" .$index. "'
 // $qry ="SELECT nome,descricao,quantidade,precosiva,descontos,iva,valordesc,valoriva,precototal FROM servicos";
 $qry ="SELECT usermame FROM users ";
   $result = $link -> query($qry);
    $data = array();
	 if ($result) {
     while($rows = $result->fetch_assoc()) 
    {
        $data[] = array(
                  "username" => $rows['username']
                  /*"descricao" => $rows['descricao'],
				  "quantidade" => $rows['quantidade'],
                  "precosiva" => $rows['precosiva'],
                  "descontos" => $rows['descontos'],
                  "iva" => $rows['iva'],
                  "valordesc" => $rows['valordesc'],
                  "valoriva" => $rows['valoriva'],
                  "precototal" => $rows['precototal'] 	 	
                  */
                    );
    }
  print_r(json_encode($data));
    return json_encode($data);  


}
else 
die("ERRO". mysqli_error());
}
/*
function edit_product() {

    $data = json_decode(file_get_contents("php://input"));     
    $index = $data->ola; 
		$link = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);
if (!$link) {
	die('Falha de ligacao a BD: ' . mysql_error());
}
   $qry = "SELECT * FROM projecto WHERE idprojecto='" .$index. "'";
   $result = $link ->query($qry);
    $data = array();
    if ($result) {
     while($rows = $result->fetch_assoc()) 
    {
        $data[] = array(
                    "idprojecto"     => $rows['idprojecto'],
                    "nome"     => $rows['nome'],
                   "descricao"     => $rows['descricao']
				    // "categoria" => $rows['categoria']
              //      "texto"    => $rows['texto'],
                  
                    );
    }
    print_r(json_encode($data));
    return json_encode($data); 
	}else die("ERRO");

}


*/


?>
var app = angular.module('myApp', ['ui.bootstrap']);

app.filter('startFrom', function() {
	return function(input, start) {
		if (input) {
			start = +start;
			//parse to int
			return input.slice(start);
		}
		return [];
	}
});
app.controller('customersCrtl', function($scope, $http, $timeout) {

	$scope.get_product = function() {
		$http.get('app/mapa.php?action=get_product').success(function(data) {
			//$scope.producst_detail = data;
			$scope.list = data;
			$scope.currentPage = 1;
			//current page
			$scope.entryLimit = 5;
			//max no of items to display in a page
			$scope.filteredItems = $scope.list.length;
			//Initially for no filter
			$scope.totalItems = $scope.list.length;

		});
	}
	$http.get('app/mapa.php').success(function(data){
	 $scope.list = data;
	 $scope.currentPage = 1; //current page
	 $scope.entryLimit = 5; //max no of items to display in a page
	 $scope.filteredItems = $scope.list.length; //Initially for no filter
	 $scope.totalItems = $scope.list.length;

	 });
	 
	$scope.setPage = function(pageNo) {
		$scope.currentPage = pageNo;
	};
	$scope.filter = function() {
		$timeout(function() {
			$scope.filteredItems = $scope.filtered.length;
		}, 10);
	};
	$scope.sort_by = function(predicate) {
		$scope.predicate = predicate;
		$scope.reverse = !$scope.reverse;
	};

/*	$scope.prod_espiar = function(index) {
		$scope.update_prod = true;
		$scope.add_prod = false;
		$http.post('app/mapa.php?action=edit_product', {
			'ola' : index
		}).success(function(data, status, headers, config) {
			//alert(data[0]["prod_name"]);

			//	$scope = data[0]["nome"];
			$scope.nome = data[0]["Nome"];
			//$scope.username = data[0]["username"];
			//  $scope.Alianca      =   data[0]["Alianca"];

		}).error(function(data, status, headers, config) {

		});
	}
	$scope.prod_escreve = function(index) {
		$scope.update_prod = true;
		$scope.add_prod = false;
		$http.post('../app/mapa.php?action=edit_product', {
			'ola' : index
		}).success(function(data, status, headers, config) {
			//alert(data[0]["prod_name"]);

			$scope.contintente = data[0]["continente"];
			$scope.nome = data[0]["Nome"];
			$scope.username = data[0]["username"];
			//  $scope.Alianca      =   data[0]["Alianca"];

		}).error(function(data, status, headers, config) {

		});
	}
	$scope.prod_amizade = function(index) {
		$scope.update_prod = true;
		$scope.add_prod = false;
		$http.post('../app/mapa.php?action=edit_product', {
			'ola' : index
		}).success(function(data, status, headers, config) {
			//alert(data[0]["prod_name"]);

			$scope.contintente = data[0]["continente"];
			$scope.nome = data[0]["Nome"];
			$scope.username = data[0]["username"];
			//  $scope.Alianca      =   data[0]["Alianca"];

		}).error(function(data, status, headers, config) {

		});
	}
	$scope.prod_Ataque = function(index) {
		$scope.update_prod = true;
		$scope.add_prod = false;
		$http.post('../app/mapa.php?action=edit_product', {
			'ola' : index
		}).success(function(data, status, headers, config) {
			//alert(data[0]["prod_name"]);

			$scope.contintente = data[0]["continente"];
			$scope.nome = data[0]["Nome"];
			$scope.username = data[0]["username"];
			//  $scope.Alianca      =   data[0]["Alianca"];

		}).error(function(data, status, headers, config) {

		});
	}*/
});

da me o seguintes erros


Error: [ngRepeat:dupes] http://errors.angularjs.org/1.3.14/ngRepeat/dupes?p0=data in filtered %3D (list | filter%3Asearch | orderBy %3A predicate %3Areverse) | startFrom%3A(currentPage-1)*entryLimit | limitTo%3AentryLimit&p1=string%3A &p2=
   at Anonymous function (http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:232:446)
   at Anonymous function (http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:122:63)
   at l.prototype.$digest (http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:123:136)
   at l.prototype.$apply (http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:126:56)
   at l (http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:81:158)
   at S (http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:85:301)
   at D.onload (http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:86:315)
angular.js (11607,11)

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

consegui resolver o problema

não estou a conseguir por

ao carregar num botao  ele mostre so os serviços que aquela empresa tem

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por violin101
      Caros amigos, saudações.

      Estou com uma dúvida, referente cálculo de valores em tempo real.

      Tenho uma rotina, que faz o cálculo, o problema é mostrar o resultado.

      Quero mostrar o RESULTADO assim: 0,00  ou  0.00

      Abaixo posto o código.
      jQuery('input').on('keyup',function(){ //Remover ponto e trocar a virgula por ponto var m = document.getElementById("pgRest").value; while (m.indexOf(".") >= 0) { m = m.replace(".", ""); } m = m.replace(",","."); //Remover ponto e trocar a virgula por ponto var j = document.getElementById("pgDsct").value; while (j.indexOf(".") >= 0) { j = j.replace(".", ""); } j = j.replace(",","."); m = parseFloat(jQuery('#pgRest').val() != '' ? jQuery('#pgRest').val() : 0); j = parseFloat(jQuery('#pgDsct').val() != '' ? jQuery('#pgDsct').val() : 0); //Mostra o Resultado em Tempo Real jQuery('#pgTroco').val(m - j); <<=== aqui estou errando })  
       
      Grato,
       
      Cesar
       
       
    • Por violin101
      Caro amigos, saudações.

      Tenho uma tabela escrita em JS que funciona corretamente.
       
      Minha dúvida:
      - como devo fazer para quando a Tabela HTML estiver vazia, exibir o LOGO da Empresa ?

      Abaixo posto o script:
      document.addEventListener( 'keydown', evt => { if (!evt.ctrlKey || evt.key !== 'i' ) return;// Não é Ctrl+A, portanto interrompemos o script evt.preventDefault(); //Chama a Função Calcular Qtde X Valor Venda calcvda(); var idProdutos = document.getElementById("idProdutos").value; var descricao = document.getElementById("descricao").value; var prd_unid = document.getElementById("prd_unid").value; var estoque_atual = document.getElementById("estoque_atual").value; var qtde = document.getElementById("qtde").value; var vlrunit = document.getElementById("vlrunit").value; var vlrtotals = document.getElementById("vlrtotal").value; var vlrtotal = vlrtotals.toLocaleString('pt-br', {minimumFractionDigits: 2}); if(validarConsumo(estoque_atual)){ //Chama a Modal com Alerta. $("#modal_qtdemaior").modal(); } else { if(qtde == "" || vlrunit == "" || vlrtotal == ""){ //Chama a Modal com Alerta. $("#modal_quantidade").modal(); } else { //Monta a Tabela com os Itens html = "<tr style='font-size:13px;'>"; html += "<td width='10%' height='10' style='text-align:center;'>"+ "<input type='hidden' name='id_prds[]' value='"+idProdutos+"'>"+idProdutos+"</td>"; html += "<td width='47%' height='10'>"+ "<input type='hidden' name='descricao[]' value='"+descricao+"'>"+descricao+ "<input type='hidden' name='esp[]' value='"+prd_unid+"'> - ESP:"+prd_unid+ "<input type='hidden' name='estoq[]' value='"+estoque_atual+"'></td>"; html += "<td width='10%' height='10' style='text-align:center;'>"+ "<input type='hidden' name='qtde[]' value='"+qtde+"'>"+qtde+"</td>"; html += "<td width='12%' height='10' style='text-align:right;'>"+ "<input type='hidden' name='vlrunit[]' value='"+vlrunit+"'>"+vlrunit+"</td>"; html += "<td width='14%' height='10' style='text-align:right;'>"+ "<input type='hidden' name='vlrtotal[]' value='"+vlrtotal+"'>"+vlrtotal+"</td>"; html += "<td width='12%' height='10' style='text-align:center;'>"+ "<button type='button' class='btn btn-uvas btn-remove-produto' style='margin-right:1%; padding:1px 3px; font-size:12px;' title='Remover Item da Lista'>"+ "<span class='fa fa-minus' style='font-size:12px;'></span></button></td>"; html += "</tr>"; $("#tbventas tbody").append(html); //Função para Somar os Itens do Lançamento somar(); $("#idProdutos").val(null); $("#descricao").val(null); $("#prd_unid").val(null); $("#qtde").val(null); $("#vlrunit").val(null); $("#vlrtotal").val(null); $("#idProdutos").focus(); //Se INCLUIR NOVO produto - Limpa a Forma de Pagamento $("#pgSoma").val(null); $("#pgRest").val(null); $("#pgDsct").val(null); $("#pgTroco").val(null); $("#tbpagar tbody").empty(); }//Fim do IF-qtde }//Fim do Validar Consumo });//Fim da Função btn-agregar  
      Grato,

      Cesar
       
    • Por violin101
      Caros amigos, saudações.

      Estou com uma pequena dúvida se é possível ser realizado.

      Preciso passar 2 IDs para o Sistema executar a função, estou utilizando desta forma e gostaria de saber como faço via JS para passar os parâmetro que preciso.

      Observação:
      Dentro da TABELA utilizei 2 Forms, para passar os IDS que preciso, funcionou conforme código abaixo.
      <div class="card-body"> <table id="tab_clie" class="table table-bordered table-hover"> <thead> <tr> <th style="text-align:center; width:10%;">Pedido Nº</th> <th style="text-align:center; width:10%;">Data Pedido</th> <th style="text-align:center; width:32%;">Fornecedor</th> <th style="text-align:center; width:10%;">Status</th> <th style="text-align:center; width:5%;">Ação</th> </tr> </thead> <tbody> <?php foreach ($results as $r) { $dta_ped = date(('d/m/Y'), strtotime($r->dataPedido)); switch ($r->pd_status) { case '1': $status = '&nbsp;&nbsp;Aberto&nbsp;&nbsp;'; $txt = '#FFFFFF'; //Cor: Branco $cor = '#000000'; //Cor: Preta break; case '2': $status = 'Atendido Total'; $txt = '#FFFFFF'; //Cor: Branco $cor = '#086108'; //Cor: Verde break; case '3': $status = 'Atendido Parcial'; $txt = '#000000'; //Cor: Branco $cor = '#FEA118'; //Cor: Amarelo break; default: $status = 'Cancelado'; $txt = '#FFFFFF'; //Cor: Branco $cor = '#D20101'; //Cor: Vermelho break; } echo '<tr>'; echo '<td width="10%" height="10" style="text-align:center;">'.$r->pd_numero.'</td>'; echo '<td width="10%" height="10" style="text-align:center;">'.$dta_ped.'</td>'; echo '<td width="32%" height="10" style="text-align:left;">'.$r->nome.'</td>'; echo '<td width="10%" height="10" style="text-align:left;"><span class="badge" style="color:'.$txt.'; background-color:'.$cor.'; border-color:'.$cor.'">'.$status.'</span></td>'; echo '<td width="5%" style="text-align:center;">'; ?> <div class="row"> <?php if($this->permission->checkPermission($this->session->userdata('permissao'), 'vPedido')){ ?> <form action="<?= base_url() ?>compras/pedidos/visualizar" method="POST" > <input type="hidden" name="idPedido" value="<?php echo $r->idPedidos; ?>"> <input type="hidden" name="nrPedido" value="<?php echo $r->pd_numero; ?>"> <button class="btn btn-warning" title="Visualizar" style="margin-left:50%; padding: 1px 3px;"><i class="fa fa-search icon-white"></i></button> </form> <?php } if($this->permission->checkPermission($this->session->userdata('permissao'), 'ePedido')){ ?> <form action="<?= base_url() ?>compras/pedidos/editar" method="POST" > <input type="hidden" name="idPedido" value="<?php echo $r->idPedidos; ?>"> <input type="hidden" name="nrPedido" value="<?php echo $r->pd_numero; ?>"> <button class="btn btn-primary" title="Editar" style="margin-left:50%; padding: 1px 3px;"><i class="fa fa-edit icon-white"></i></button> </form> <?php } ?> </div> <?php echo '</td>'; echo '</tr>'; } ?> </tbody> </table> </div>
      Grato,

      Cesar.
    • Por belann
      Olá!
       
      Estou usando o editor quill em uma página html, sem fazer a instalação com npm, mas usando as api´s via internet com http, no entanto não consigo fazer a tecla enter funcionar para mudança de linha, tentei essa configuração abaixo, mas não funcionou.
       
      modules: {       syntax: true,       toolbar: '#toolbar-container',       keyboard: {         bindings: {           enter: {             key: 13,             handler: function(range, context) {                       quill.formatLine(range.index, range.length, { 'align': '' });             }           }  
       
    • Por violin101
      Caros amigos, saudações.
       
      Gostaria de poder tirar uma dúvida com os amigos.
       
      Como faço uma função para Comparar a Data Digitada pelo o Usuário com a Data Atual ?

      Data Digitada:  01/09/2024
       
      Exemplo:
      25/09/2024 é menor que DATA Atual  ====> mensagem: informe uma data válida.
      25/09/2024 é igual DATA Atual ===> o sistema libera os INPUT's.
       
      Como faço uma comparação com a Data Atual, para não Deixar Gravar Data retroativa a data Atual.
       
      Grato,
       
      Cesar
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.