X-Git-Url: https://git.llucax.com/z.facultad/75.08/llamadas.git/blobdiff_plain/8977611190d8b4f699a830afad55f5f34e4ba6f8..25472de6972102f579c655961df0c315b62fbcc6:/inst/aficonf?ds=sidebyside diff --git a/inst/aficonf b/inst/aficonf index 360441d..bd8ba4e 100755 --- a/inst/aficonf +++ b/inst/aficonf @@ -6,34 +6,50 @@ #trap "echo -n ''" INT # Cargo config -#BASE_DIR="$HOME/.antifraude" -BASE_DIR="$PWD" -echo $BASE_DIR +BASE_DIR="$HOME/.antifraude" # Cargo config -#. "/$BASE_DIR/aficonf.conf" +. "$BASE_DIR/conf/aficonf.conf" # Cargo utilidades -. "/$BASE_DIR/util.sh" +. "$BASE_DIR/util.sh" #Valida que exista el pais +# Parámetros : +# $1 = Descripcion a buscar +# $2 = Variable donde guardar el código del Pais en caso de existir existe_pais () { - EXISTE=`cat "$BASE_DIR/oridesti.txt" | egrep "^$1;"`; + EXISTE=`cat "$BASE_DIR/oridesti.txt" | egrep "^[A-Z]*;$1" | cut -d ';' -f 1`; if [ "$EXISTE" != "" ] ; then + #Exite!, debo gaurdar el código + eval "$2=$EXISTE" return 0 fi return 1 } +poner_estado_umbral () { + ID=$1 + ESTADO=$2 + + FECHA=`date +"%Y%m%d"` + HORA=`date +"%H%M%S"` + + if [ "$ESTADO" != "A" ] && [ "$ESTADO" != "I" ] ; then + return 1 + fi + SALIDA=`sed "s/^$ID\(;[^;]*;[^;]*;[^;]*;\)[^;]*\(;[^;]*;[^;]*;[^;]*\)$/$ID\1I;$USER;$FECHA;$HORA/" "$BASE_DIR/umbrales.param"` + echo "$SALIDA" > "$BASE_DIR/umbrales.param" +} + menu () { echo "AFICONF" echo "=======" echo echo " 1) Alta" - echo " 2) Baja" - echo " 3) Buscar" - echo " 4) Salir" + echo " 2) Buscar" + echo " 3) Salir" - preguntar "Su opción" "1234" $1 + preguntar "Su opción" "123" $1 } existe_umbral () { @@ -71,10 +87,11 @@ case_altas () { preguntar "Tipo de llamada" "ES" TIPO DONE=0 + CODIGO='' while [ $DONE == 0 ] ; do - leer "Pais (código de 2 letras)" "" PAIS - if ! existe_pais "$PAIS" ; then - echo "No existe el país de código $PAIS" + leer "Pais (descripción)" "" PAIS + if ! existe_pais "$PAIS" CODIGO ; then + echo "No existe el país de descrición '$PAIS'" else DONE=1 fi @@ -83,6 +100,9 @@ case_altas () { fi done + echo "El código de '$PAIS' es '$CODIGO'" + PAIS=$CODIGO + # Verifico que el umbral no exista FECHA=`date +"%Y%m%d"` HORA=`date +"%H%M%S"` @@ -121,11 +141,19 @@ case_buscar () { fi done - DATOS=`cat "$BASE_DIR/umbrales.param" | grep "[0-9]*;$LINEA"` + DATOS=`cat "$BASE_DIR/umbrales.param" | grep "[0-9]*;$LINEA;[A-Z]*;[E,S];A"` + + if [ "$OPT" == "" ] ; then + echo "" + echo "No se han encontrado uUmbrales activos para la linea $LINEA." + echo "Abortando ..." + echo "" + return 0 + fi - printf "%s\t%s\t%s\t%s\t%s\t%s\t%s\n" "ID" "Ciudad" "Tipo" "Estado" "Usuario" "Fecha" "Hora" + printf "%3s %2s %1s %1s %10s%8s %6s\n" "ID" "Ciudad" "Tipo" "Estado" "Usuario" "Fecha" "Hora" + OPCIONES="-1" for i in $DATOS ; do - #$echo $i | (read ID CIUDAD TIPO ESTADO USUARIO FECHA HORA RESTO ID=`echo "$i" | cut -d ';' -f 1` CIUDAD=`echo "$i" | cut -d ';' -f 3` TIPO=`echo "$i" | cut -d ';' -f 4` @@ -133,8 +161,22 @@ case_buscar () { USUARIO=`echo "$i" | cut -d ';' -f 6` FECHA=`echo "$i" | cut -d ';' -f 7` HORA=`echo "$i" | cut -d ';' -f 8` - printf "%s\t%s\t%s\t%s\t%s\t%s\t%s\n" "$ID" "$CIUDAD" "$TIPO" "$ESTADO" "$USUARIO" "$FECHA" "$HORA" + printf "%3s %2s %1s %1s %10s %8s %6s\n" "$ID" "$CIUDAD" "$TIPO" "$ESTADO" "$USUARIO" "$FECHA" "$HORA" + OPCIONES="$OPCIONES $ID" done + + preguntar "Cual desea borrar (-1 para salir)" "$OPCIONES" OPT + + if [ "$OPT" = "-1" ] ; then + return 0 + fi + + echo "Borrando el registro $OPT ..." + poner_estado_umbral "$OPT" "I" + echo "" + echo "" + echo "El Umbral fue eliminado con éxito" + echo "" } # No permito correr 2 instancias de AFICONF @@ -149,13 +191,12 @@ lock "aficonf" # Loop Principal OPT="0" -while [ "$OPT" != "4" ] ; do +while [ "$OPT" != "3" ] ; do menu OPT case $OPT in "1") case_altas ;; - "2") echo "Dos" ;; - "3") case_buscar ;; + "2") case_buscar ;; esac done