/// <summary> /// Procedimiento para comprobar la existencia del archivo de configuracion config.data /// Si no existe, se crea si o si ... >:) /// </summary> public static void configCheck() { // 1. COMPROBAR EXISTENCIA... // 2. SI NO ESTA.. CREARLO: // 3. PEDIR LOS DATOS Y GUARDARLOS A OBJETO DatosBase // 4. CON LOS DATOS EN EL OBJETO, LO PASAMOS POR EL FILEHELPER PARA GUARDARLO EN BINARIO // 5. SALIMOS... string pass; // PARA GUARDAR LA CONTRASEÑA bool salir; // CONTROL DE SALIDA SI CREACION CORRECTA try { datosBaseBin = new DatosBase(); // REUSAMOS EL OBJETO DEL CONTROLADOR salir = false; // SETEAMOS SALIR A FALSE if (!File.Exists(rutabin)) { CH.cls(); CH.lcdColor("!> ATENCIÓN!!.. NO EXISTE EL FICHERO DE CONFIGURACION!!", ConsoleColor.Red); CH.lcdColor("\ni> VAMOS A CREARLO AHORA... ALMA DEL AMOL HERRMOZO >:) \ni> Y NO TE EQUIVOQUES.... PUES EMPEZARAS DEL PRINCIPIO", ConsoleColor.DarkYellow); do { try { CH.lcd(""); pass = CH.leerCadena("CONTRASEÑA DE ACCESO"); datosBaseBin.maxhoras = CH.leerNumero("HORAS MÁXIMAS NOMINA"); datosBaseBin.horasbase = CH.leerNumero("HORAS TOPE SAL. BASE"); datosBaseBin.maxeuxhora = CH.leerCantidad("EUROS MAX. X HORA..."); datosBaseBin.preciojoranda = CH.leerCantidad("PRECIO EUR. JORANDA."); datosBaseBin.incrementoextra = CH.leerCantidad("IMCREMENTO H. EXTRA."); datosBaseBin.impuestos = CH.leerCantidad("% DE IMPUESTOS......"); FH.grabarValoresBinary(rutabin, pass, datosBaseBin.maxhoras, datosBaseBin.horasbase, datosBaseBin.maxeuxhora, datosBaseBin.preciojoranda, datosBaseBin.incrementoextra, datosBaseBin.impuestos); FH.grabarValores(ruta, pass, datosBaseBin.maxhoras, datosBaseBin.horasbase, datosBaseBin.maxeuxhora, datosBaseBin.preciojoranda, datosBaseBin.incrementoextra, datosBaseBin.impuestos); salir = true; } catch (Exception ex) { CH.lcdColor("!> ERROR: " + ex.Message, ConsoleColor.Red); CH.pausa(); } } while (!salir); } else { CH.cls(); CH.lcdColor("!> FICHERO DE CONFIGURACION LOCALIZADO...", ConsoleColor.Green); CH.pausa(); } } catch (IOException ex) { CH.lcdColor("!> ERROR I/O: " + ex.Message, ConsoleColor.Red); CH.pausa(); } //CH.pausa(); }
/// <summary> /// Procedimiento para modificar los valores de configuración por defecto de las nóminas. /// Usa tanto file.io como consosole.writre por lo que lo dejaremos de momento EN EL CONTROLADOR!!! /// </summary> public static void modificarValores() { // 1. Listar los valores // 2. Elegir uno // 3. Modificar pidiendo el nuevo dato int opcion; bool salir; byte formato; salir = false; // LOS MODIFICAMOS EN EL OBJETO DIRECTAMENTE do { try { InterfazAdministracion.listarDatos(datosBase.maxhoras, datosBase.horasbase, datosBase.maxeuxhora, datosBase.preciojoranda, datosBase.incrementoextra, datosBase.impuestos); opcion = CH.leerOpcionMsg(6, "Introduce el número del valor a modificar"); switch (opcion) { case 1: datosBase.maxhoras = CH.leerNumero("NUEVO MAXIMO HORAS"); salir = true; break; case 2: datosBase.horasbase = CH.leerNumero("NUEVO HORAS SALARIO BASE"); salir = true; break; case 3: datosBase.maxeuxhora = CH.leerFloat("EUROS MAXIMOS POR HORA"); salir = true; break; case 4: datosBase.preciojoranda = CH.leerFloat("PRECIO JORNADA"); salir = true; break; case 5: datosBase.incrementoextra = CH.leerFloat("FACTOR EXTRA"); salir = true; break; case 6: datosBase.impuestos = CH.leerFloat("PORCENTAJE DE IMPUESTOS"); salir = true; break; } // LOS VOLCAMOS DEL OBJETO AL FICHERO DE DATOS DE CONFIGURACION. // PEDIMOS EL FORMATO Y USAMOS UNO U OTRO. USA FILEHELPER.CLASS > FH!! formato = FH.pedirFormato(); switch (formato) { case (1): // FORMATO TEXTO FH.grabarValores(ruta, pass, datosBase.maxhoras, datosBase.horasbase, datosBase.maxeuxhora, datosBase.preciojoranda, datosBase.incrementoextra, datosBase.impuestos); break; case (2): // FORMATO BINARIO FH.grabarValoresBinary(rutabin, pass, datosBase.maxhoras, datosBase.horasbase, datosBase.maxeuxhora, datosBase.preciojoranda, datosBase.incrementoextra, datosBase.impuestos); break; } } catch (Exception ex) { CH.lcdColor("!> ERROR: " + ex.Message, ConsoleColor.Red); } } while (!salir); }