-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsource-code.ahk
More file actions
62 lines (56 loc) · 2.13 KB
/
source-code.ahk
File metadata and controls
62 lines (56 loc) · 2.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
; Defina o caminho para o arquivo de log no mesmo diretório do script
logFile := A_ScriptDir "\log.txt"
; Função para formatar a data e hora no formato dd/mm/yyyy hh:mm:ss
GetFormattedDateTime() {
FormatTime, formattedTime,, dd/MM/yyyy HH:mm:ss
return formattedTime
}
; Função para registrar no log
LogToFile(logMessage) {
global logFile
formattedTime := GetFormattedDateTime()
FileAppend, %formattedTime% - %logMessage%n, %logFile%
}
; Atalho para abrir os links dos tickets
!A::
; Limpar a área de transferência
Clipboard := ""
; Copiar o conteúdo da área de transferência
Send, ^c
; Esperar um curto período de tempo para garantir que a área de transferência seja atualizada
Sleep, 100
; Recuperar o texto da área de transferência
TicketNumbers := Clipboard
; Verificar se há algum número de ticket na área de transferência
if (TicketNumbers != "" && RegExMatch(TicketNumbers, "\d"))
{
; Dividir os números de ticket com base nas quebras de linha
TicketList := StrSplit(TicketNumbers, "`n")
; Iterar sobre cada linha de texto encontrada
Loop, % TicketList.MaxIndex()
{
; Remover todos os caracteres não numéricos e dividir os tickets por espaço ou vírgula
Line := RegExReplace(TicketList[A_Index], "[^\d\s,]", " ")
Loop, Parse, Line, %A_Space%
{
TicketNumber := Trim(A_LoopField)
; Construir o URL com o número do ticket
if (TicketNumber != "")
{
URL := "https://growatt.movidesk.com/Ticket/edit/" TicketNumber
; Abrir o URL no navegador padrão
Run, %URL%
; Registrar a abertura do ticket no log
LogToFile("URL: " . URL)
}
}
}
}
else
{
; Se não houver número de ticket na área de transferência
MsgBox, FALHA: Nenhum ticket encontrado.
; Registrar a falha no log
LogToFile("Falha: Nenhum ticket encontrado.")
}
return