2018-05-20 15:39:41 +00:00
#!/bin/bash
# Financas, varios incumprimentos:
# a) XLS, XLSX e DOC
# http://info.portaldasfinancas.gov.pt/pt/apoio_contribuinte/tabela_ret_doclib/Pages/default.aspx
# b) endereços e contactos em XLSX
# https://www.portaldasfinancas.gov.pt/pt/contactosEbalcao.action
# c) lista de formulários, quase na totalidade em formatos proprietários
# http://info-aduaneiro.portaldasfinancas.gov.pt/pt/publicacoes_formularios/formularios/Pages/formularios.aspx
2020-04-11 18:19:44 +00:00
# d) efacturas -- exportação de facturas depende de flash
2020-05-06 22:28:49 +00:00
# e) Enviar Ficheiro SAF-T exige Java -- https://faturas.portaldasfinancas.gov.pt/enviarSaftAppletForm.action
2018-05-20 15:39:41 +00:00
# Visto que para um destes casos podem os ficheiros continuar disponíveis e o
# incumprimento ser à mesma resolvido atravás da disponibilização, em paralelo,
# dos documentos em formatos abertos, este teste vai "jogar pelo seguro" e
# dizer que o incumprimento pode já estar resolvido (obrigando a uma revisão
# manual) caso a página tenha mudado
2020-01-25 01:27:03 +00:00
# FIXME: voltar a validar o cenário (a) (precisa de ser actualizado que agora há a tabela de 2020)
# # (a)
# wget "http://info.portaldasfinancas.gov.pt/pt/apoio_contribuinte/tabela_ret_doclib/_vti_bin/portalat/docs.svc/groupeddocs?fields=DocIcon,Title,FileSizeDisplay&groups=Year:DESC&selectedvalues=2018&filter=<IsNotNull><FieldRef Name=\"ID\"></FieldRef></IsNotNull>&sort=Year:DESC,Title:DESC&id=27" -o /dev/null -O docs-2018
# a=$(diff docs-2018 scripts/09/docs-2018|wc -l)
# rm docs-2018
# if [ ! "$a" -eq "0" ]; then
# echo "financas: 'documentos XLS, XLSX e DOC' pode já estar resolvido.";
# fi
2018-05-20 15:39:41 +00:00
2020-01-17 00:06:55 +00:00
# FIXME: voltar a validar o cenário (b), agora em http://info.portaldasfinancas.gov.pt/pt/dgci/contactos_servicos/enderecos_contactos/Pages/contactos.aspx
# # (b)
# wget https://www.portaldasfinancas.gov.pt/pt/contactosEbalcao.action -o /dev/null -O -|grep -i "Lista de Contactos" > contactos
# b=$(diff contactos scripts/09/contactos|wc -l)
# rm contactos
# if [ ! "$b" -eq "0" ]; then
# echo "financas: incumprimento nos contactos pode já estar resolvido.";
# fi
2018-05-20 15:39:41 +00:00
# (c)
wget "http://info-aduaneiro.portaldasfinancas.gov.pt/pt/publicacoes_formularios/formularios/_vti_bin/portalat/docs.svc/listdocs?fields=DocIcon,Modelo,Title&sort=Seq:ASC,Seq_2:ASC,Title:ASC&filter=<IsNotNull><FieldRef Name=\"ID\"></FieldRef></IsNotNull>&id=35" -o /dev/null -O forms
c = $( diff forms scripts/09/forms| wc -l)
rm forms
2020-04-11 18:19:44 +00:00
2020-05-06 22:28:49 +00:00
# (d) && (e)
2020-04-11 18:19:44 +00:00
# TODO
2018-05-20 15:39:41 +00:00
if [ ! " $c " -eq "0" ] ; then
echo "financas: incumprimento nos formulários pode já estar resolvido." ;
fi
if [ " $(( a + b + c)) " -eq "0" ] ; then
echo "financas: Incumprimentos mantêm-se, a actualizar o README (faça um git diff, valide, e commit!)" ;
while IFS = '' read -r line || [ [ -n " $line " ] ] ; do
test $( echo " $line " | grep -v financas| wc -l) -eq "1" \
&& echo " $line " \
|| ( h = $( echo " $line " | cut -d\| -f1-4) ; t = $( echo " $line " | cut -d\| -f6-) ; echo " $h | $( date +%Y/%m/%d) | $t " ) ;
done < README.md > new
mv new README.md
2018-11-20 21:52:46 +00:00
else
2019-07-10 11:34:20 +00:00
echo "financas: Incumprimentos podem estar resolvidos." ;
2018-05-20 15:39:41 +00:00
fi