/// <summary> /// Método encargado de Obtener el Kilometraje Inverso /// </summary> /// <param name="id_kilometraje">Kilometraje</param> /// <returns></returns> public static Kilometraje ObtieneKilometrajeInverso(int id_kilometraje) { //Declarando Objeto de Retorno Kilometraje kmsInv = new Kilometraje(); //Instanciando Kilometraje using (Kilometraje kms = new Kilometraje(id_kilometraje)) { //Validando que exista el Kilometraje if (kms.id_kilometraje > 0) { //Instanciando Kilometraje kmsInv = new Kilometraje(kms.id_ubicacion_destino, kms.id_ubicacion_origen, kms.id_ruta, kms.id_compania_emisor); } } //Devolviendo Objeto de Retorno return(kmsInv); }
/// <summary> /// Realiza la actualización de montos solicitados (insertando, editano o eliminando conceptos), una vez actualizados se realiza la agrupación de los registros /// </summary> private void ImportacionKilometrajes() { //Declarando resultao de carga de vista previa RetornoOperacion resultado = new RetornoOperacion("Primero debe cargar un archivo .xls o .xlsx."); //Validando que existan registros que modificar using (DataTable mit = OrigenDatos.RecuperaDataTableDataSet((DataSet)Session["DS"], "TableImportacion")) { //Obtiene los kilometrajes a importar general List <DataRow> Validacion = (from DataRow r in mit.Rows where r.Field <int>("No") != -1 && r.Field <int>("No") != -2 && r.Field <int>("No") != -7 && r.Field <int>("No") != -8 && r.Field <int>("No") != -9 select r).ToList(); if (Validacion.Count > 1) { //Señalando resultado exitoso resultado = new RetornoOperacion("No se puede importar el documento, validar errores", false); } else { //Obtiene los registros que importaran sin ningun problema los cuales se identifican por no = -2 List <DataRow> Insertar = (from DataRow r in mit.Rows //where r.Field<int>("No") == -2 select r).ToList(); foreach (DataRow dr in Insertar) { int Opcion = Convert.ToInt32(dr["No"]); if (Opcion == -7 || Opcion == -8 || Opcion == -9) { Opcion = -1; } switch (Opcion) { case -1: //Modificacion de registo using (SAT_CL.Global.Kilometraje km = new SAT_CL.Global.Kilometraje(Convert.ToInt32(dr["IdKMS"]))) { //Validando que exista el Kilometraje if (km.habilitar) { if (km.id_kilometraje > 0) { decimal KmsActual = Convert.ToDecimal(dr["KMSActual"]); decimal KmsNuevo = Convert.ToDecimal(dr["KMS"]); if (KmsActual == KmsNuevo) { resultado = new RetornoOperacion(true); } else { //Editando Kilometraje resultado = km.EditaKilometrajeImportacion(Convert.ToInt32(dr["IdO"]), Convert.ToInt32(dr["IdD"]), Convert.ToDecimal(dr["KMS"]), Convert.ToDecimal(Cadena.VerificaCadenaVacia(Convert.ToString(dr["Tiempo"]), "0")), Convert.ToDecimal(Cadena.VerificaCadenaVacia(Convert.ToString(dr["KMSPago"]), "0")), Convert.ToDecimal(Cadena.VerificaCadenaVacia(Convert.ToString(dr["KMSCobro"]), "0")), ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor, ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario); } } } } break; //Inserta nuevo registro case -2: resultado = SAT_CL.Global.Kilometraje.InsertaKilometraje(Convert.ToInt32(dr["IdO"]), Convert.ToInt32(dr["IdD"]) , SqlGeography.Null, SqlGeography.Null, Convert.ToDecimal(dr["KMS"]), 0.00M, Convert.ToDecimal(Cadena.VerificaCadenaVacia(Convert.ToString(dr["Tiempo"]), "0")), 0.00M, 0, Convert.ToDecimal(Cadena.VerificaCadenaVacia(Convert.ToString(dr["KMSPago"]), "0")), Convert.ToDecimal(Cadena.VerificaCadenaVacia(Convert.ToString(dr["KMSCobro"]), "0")), ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor, ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario); break; } } } } //inicializa pagina inicializaPagina(); //Notificando resultado obtenido ScriptServer.MuestraNotificacion(this, resultado, ScriptServer.PosicionNotificacion.AbajoDerecha); }