]> git.llucax.com Git - z.facultad/75.08/llamadas.git/blobdiff - inst/aficonf
bugfix
[z.facultad/75.08/llamadas.git] / inst / aficonf
index d8c3758b4550d4cca1aced744f31669de075f10a..7b942033e9347127c1a78645b23fde2eb5a42dad 100755 (executable)
@@ -3,16 +3,15 @@
 # Configurador
 
 # Atajo CTRL+C 
-trap "echo -n ''" INT
+#trap "echo -n ''" INT
 
 # Cargo config
 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
 existe_pais () {
@@ -23,14 +22,27 @@ existe_pais () {
        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
 }
@@ -105,16 +117,68 @@ case_altas () {
        echo ""
 }
 
+case_buscar () {
+       DONE=0
+       while [ $DONE == 0 ] ; do
+               leer "Número de línea" "" LINEA
+               #TODO Valido
+               if ! validar_solo_numeros "$LINEA" ; then
+                       echo "EL NUMERO TE LINEA SOLO DEBE TENER DIGITOS"
+               else
+                       DONE=1
+               fi
+               if [ "$LINEA" == "" ] ; then
+                       DONE=0
+               fi
+       done
+
+       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 "%3s      %2s  %1s   %1s    %10s%8s       %6s\n" "ID" "Ciudad" "Tipo" "Estado" "Usuario" "Fecha" "Hora"
+       OPCIONES="-1"
+       for i in $DATOS ; do
+               ID=`echo "$i" | cut -d ';' -f 1`
+               CIUDAD=`echo "$i" | cut -d ';' -f 3`
+               TIPO=`echo "$i" | cut -d ';' -f 4`
+               ESTADO=`echo "$i" | cut -d ';' -f 5`
+               USUARIO=`echo "$i" | cut -d ';' -f 6`
+               FECHA=`echo "$i" | cut -d ';' -f 7`
+               HORA=`echo "$i" | cut -d ';' -f 8`
+               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
-if is_lock "AFICONF" ; then
+if is_lock "aficonf" ; then
        echo ""
        echo "Aficonf está corriendo actualmente."
        echo ""
        exit 1
 fi
 
-lock "AFICONF"
+lock "aficonf"
 
 # Loop Principal
 OPT="0"
@@ -123,10 +187,9 @@ while [ "$OPT" != "4" ] ; do
 
        case $OPT in
                "1") case_altas ;;
-               "2") echo "Dos" ;;
-               "3") echo "Tres" ;;
+               "2") case_buscar ;;
        esac
 done
 
-unlock "AFICONF"
+unlock "aficonf"