public function removerProduto($id)
 {
     $model = ProdutosModel::find($id);
     return $model->delete();
 }
 public function postPesquisa()
 {
     $dados = Input::all();
     if (isset($dados["columns"])) {
         $columns = $dados["columns"];
     }
     if (isset($dados["order"])) {
         $order = $dados["order"];
         $order = $order[0];
         $orderIndex = intval($order["column"]);
     }
     if (isset($dados["search"])) {
         $search = $dados["search"];
     }
     $limit = intval($dados["length"]);
     $start = intval($dados["start"]);
     if (isset($dados["min"])) {
         $min = $dados["min"];
     }
     if (isset($dados["max"])) {
         $max = $dados["max"];
     }
     $recordsTotal = count(EstoqueProdutoModel::get());
     if ($limit == -1) {
         $limit = $recordsTotal;
     }
     $estoques = DB::table("estoque_produtos")->join("produtos", "estoque_produtos.cod_produto", "=", "produtos.cod")->select(DB::raw('SQL_CALC_FOUND_ROWS *'))->where("estoque_produtos.cod_estoque", $search["value"])->orWhere(function ($query) use($min, $max, $search) {
         if ($min != "" && $max == "") {
             $query->where("estoque_produtos.qtd_atual", ">=", $min);
         }
         if ($max != "" && $min == "") {
             $query->where("estoque_produtos.qtd_atual", "<=", $max);
         }
         if ($min != "" && $max != "") {
             $query->whereBetween("estoque_produtos.qtd_atual", array($min, $max));
         }
         $exists = ProdutosModel::where("nome", "LIKE", "%" . $search["value"] . "%")->get();
         if (count($exists) > 0) {
             $query->where("produtos.nome", "LIKE", "%" . $search["value"] . "%");
         } else {
             $query->where("estoque_produtos.data_vencimento", "LIKE", "%" . $search["value"] . "%");
         }
     })->select("estoque_produtos.cod_estoque", "produtos.nome", "estoque_produtos.qtd_atual", "estoque_produtos.data_entrada", "estoque_produtos.data_vencimento", "produtos.deletada")->orderBy($columns[$orderIndex]["name"], $order["dir"])->take($limit)->skip($start)->get();
     $recordsFiltered = DB::select(DB::raw("SELECT FOUND_ROWS() AS total;"));
     $recordsFiltered = $recordsFiltered[0];
     $recordsFiltered = intval($recordsFiltered->total);
     $json = [];
     $json["draw"] = intval($dados["draw"]);
     $json["recordsTotal"] = $recordsTotal;
     $json["recordsFiltered"] = $recordsFiltered;
     $json["aaData"] = array();
     foreach ($estoques as $key => $value) {
         $value = (array) $value;
         if ($value["deletada"] == 1) {
             continue;
         }
         if (intval($value["qtd_atual"]) == 0) {
             $value["qtd_atual"] = "<span class='text-danger'>" . $value["qtd_atual"] . "</span>";
         }
         if (strtotime($value["data_vencimento"]) && time() > strtotime($value["data_vencimento"])) {
             $value["data_vencimento"] = "<span class='text-danger'>" . $value["data_vencimento"] . "</span>";
         } else {
             $value["data_vencimento"] = "<span class='text-primary'>" . $value["data_vencimento"] . "</span>";
         }
         array_push($json["aaData"], array_values($value));
     }
     return json_encode($json);
 }
Esempio n. 3
0
 public function getListar()
 {
     $produtos = ProdutosModel::where("deletada", "<>", 1)->orderBy("nome", "asc")->get();
     return json_encode($produtos);
 }