# AUTORAS: LORENA PEREIRA (lorena.carolyne@unesp.br)
##          FERNANDA NEVES LIMA (neves.lima@unesp.br)
#limpar o ambiente
rm(list = ls())

# Instalar e carregar pacote necessário
# O "if" é para verificar se o pacote ja esta instalado, pra não ficar repetindo instalação
# Caso a pessoa não tenha, o scritp automaticamente vai instalar o pacote e carregar com o "library"
if (!require("jsonlite")) install.packages("jsonlite")
library(jsonlite)

# Define a pasta onde estão os arquivos .RGP
# Então sempre verifique sua pasta, caso não saiba é só clicar no documento com o botão direito do mouse..
# Ai vai aparecer "propriedades" clica lá, e depois "local" que vai aparecer!
pasta_arquivos <- "C:/Users/march/Downloads/Documents/resistógrafo/medicoes_cursoresis"
# Lista todos os arquivos .RGP da pasta
# Essa função vai puxar todos os arquivos RGP que tem na pasta
arquivos_rgp <- list.files(path = pasta_arquivos, pattern = "\\.rgp$", full.names = TRUE)
# Cria uma pasta para salvar os CSVs, se quiser separar
# Aqui é para criar uma pasta com os arquivos "novos", se já existir, ele não vai criar, vai salvar na que existe!
pasta_saida <- file.path(pasta_arquivos, "csv_resistografocurso")
if (!dir.exists(pasta_saida)) dir.create(pasta_saida)
# Loop para processar todos os arquivos
for (caminho_arquivo in arquivos_rgp) {
  cat("Lendo arquivo:", caminho_arquivo, "\n")
  
  tryCatch({
    # Lê o arquivo JSON
    dados_json <- fromJSON(caminho_arquivo)
      # Extrai variáveis principais
    profundidade_total <- dados_json$Header$depthMsmt
    drill <- dados_json$profile$drill
    
    # Cria dataframe com índice, drill
     dados_resistografo <- data.frame(
      Ponto = 1:length(drill),
      Drill = drill)
    # Cria nome de saída
    nome_arquivo <- tools::file_path_sans_ext(basename(caminho_arquivo))
    caminho_csv <- file.path(pasta_saida, paste0(nome_arquivo, ".csv"))
    
    # Exporta para CSV
    write.csv(dados_resistografo, caminho_csv, row.names = FALSE)
    cat("✅ Arquivo salvo:", caminho_csv, "\n\n")
    
  }, error = function(e) {
    cat("⚠️ Erro ao ler o arquivo:", caminho_arquivo, "\n")
    cat("Mensagem de erro:", e$message, "\n\n")
  })
}
#vai mostrar se todos os arquivos foram processados
cat("Todos os arquivos foram processados com sucesso!\n")
View(dados_json)

show(dados_json$profile$feed)
#_______________________________________FIM PARTE 1 ________________________________________________________

#limpar o ambiente
ls()
rm (list=ls ())
ls ()


# Define o diretório onde estão os arquivos
setwd("C:/Users/Fernanda Lima/Downloads/medicoes_cursoresis/csv_resistografocurso/renomeadoscursoresis")  # Substitua pelo seu caminho onde está o arquivo Nomesarquivo.csv
####RENOMEAR NOMES DOS ARQUIVOS PARA IDENTIFICAÇÃO DA ÁRVORE, NESSE CASO PROGÊNIE-BLOCO
# Lê a planilha com os nomes antigos e novos - nesse arquivo deve estar o código da árvore que você quer adicionar na coluna "novo" e o nome do arquivo "ARV_00" na coluna antigo EXATAMENTE IGUAL  
#crie o arquivo somente com os nomes que possuem a leitura do registografo 
library(readr)
nomes <- read_delim("Nomesarquivo1.csv", 
                    delim = ";", escape_double = FALSE, trim_ws = TRUE)  #CONFIRA SE ENTROU CORRETAMENTE PELO CÓDIGO SE IMPORTE MANUALMENTE NA PARTE FILES
# Caminho da pasta onde estão os arquivos .csv originais
pasta_saida <- file.path("C:/Users/march/Downloads/Documents/resistógrafo/medicoes_cursoresis","csv_resistografocurso")

# Cria uma nova pasta para salvar os arquivos renomeados
pasta_renomeados <- file.path(pasta_saida, "renomeadoscursoresis")
if (!dir.exists(pasta_renomeados)) dir.create(pasta_renomeados)

# Loop para copiar e renomear os arquivos
for (i in 1:nrow(nomes)) {
  antigo_nome <- paste0(nomes$antigo[i], ".csv")
  novo_nome   <- paste0(nomes$novo[i], ".csv")
  
  nomes$antigo <- trimws(nomes$antigo)
  nomes$novo <- trimws(nomes$novo)
  
  
  if (!is.na(antigo_nome) && antigo_nome != "" &&
      !is.na(novo_nome) && novo_nome != "") {
    
    caminho_antigo <- file.path(pasta_saida, antigo_nome)
    caminho_novo   <- file.path(pasta_renomeados, novo_nome)
    
    if (file.exists(caminho_antigo)) {
      file.copy(caminho_antigo, caminho_novo, overwrite = TRUE)
      cat("✅ Copiado e renomeado:", antigo_nome, "→", novo_nome, "\n")
    } else {
      cat("❌ Arquivo original não encontrado:", antigo_nome, "\n")
    }
    
  } else {
    cat("⚠️ Linha", i, "inválida ou incompleta. Pulando...\n")
  }
}


#______________________________________________________________FIM PARTE 2____________________________________________
