コード例 #1
0
        public ConsultarAutorizadorPRE(IConsultarAutorizadorVIS vista)
        {
            try
            {
                this.vista = vista;
                dctx       = FacadeBR.ObtenerConexion();

                this.controlador = new AutorizadorBR();
            }
            catch (Exception ex)
            {
                this.vista.MostrarMensaje("Inconsistencia en los parámetros de configuración", ETipoMensajeIU.ERROR, this.nombreClase + ".ConsultarAutorizadorPRE: " + ex.Message);
            }
        }
コード例 #2
0
        public RegistrarAutorizadorPRE(IRegistrarAutorizadorVIS view, IucAutorizadorVIS viewDetalle)
        {
            try
            {
                this.vista        = view;
                this.vistaDetalle = viewDetalle;

                this.presentadorDetalle = new ucAutorizadorPRE(viewDetalle);

                this.controlador = new AutorizadorBR();
                this.dctx        = FacadeBR.ObtenerConexion();
            }
            catch (Exception ex)
            {
                this.vista.MostrarMensaje("Inconsistencia en los parámetros de configuración", ETipoMensajeIU.ERROR, this.nombreClase + ".RegistrarAutorizadorPRE: " + ex.Message);
            }
        }
コード例 #3
0
        public string ValidarCampos()
        {
            string s = "";

            if (this.vista.UnidadOperativaID == null)
            {
                s += "Unidad Operatia, ";
            }
            if (this.vista.SucursalID == null)
            {
                s += "Sucursal, ";
            }
            if (this.vista.TipoAutorizacion == null)
            {
                s += "Tipo de Autorización, ";
            }
            if (this.vista.EmpleadoID == null)
            {
                s += "Empleado, ";
            }
            if (this.vista.Email == null)
            {
                s += "Correo Electrónico, ";
            }
            if (this.vista.Telefono == null)
            {
                s += "Teléfono, ";
            }
            if (this.vista.SoloNotificacion == null)
            {
                s += "Notificación, ";
            }
            if (this.vista.Estatus == null)
            {
                s += "Estatus, ";
            }

            if (s.Trim().CompareTo("") != 0)
            {
                return("Los siguientes campos no pueden estar vacíos: \n" + s.Substring(0, s.Length - 2));
            }

            //Se verifica la existencia del autorizador en la BD
            AutorizadorBO bo = new AutorizadorBO();

            #region Obtener el tipo de Autorización
            Type TipoEnum = typeof(ETipoAutorizacion);
            TipoEnum            = bo.ObtenerETipoAutorizacion((ETipoEmpresa)this.vista.UnidadOperativaID);
            bo.TipoAutorizacion = (Enum)Enum.ToObject(TipoEnum, this.vista.TipoAutorizacion);
            #endregion
            bo.Sucursal = new SucursalBO {
                Id = this.vista.SucursalID, UnidadOperativa = new UnidadOperativaBO()
                {
                    Id = this.vista.UnidadOperativaID
                }
            };
            bo.Empleado = new EmpleadoBO {
                Id = this.vista.EmpleadoID
            };
            List <AutorizadorBO> lst = new AutorizadorBR().Consultar(this.dctx, bo);

            if (lst.Count > 0)
            {
                return("Ya se encuentra registrada la configuración de tipo de autorización, sucursal y empleado.");
            }

            return(null);
        }
コード例 #4
0
        /// <summary>
        /// Realiza la baja de la unidad
        /// </summary>
        public void RealizarBajaUnidadFlota()
        {
            string s;

            if ((s = this.ValidarCamposRegistro()) != null)
            {
                this.vista.MostrarMensaje(s, ETipoMensajeIU.ADVERTENCIA, null);
                return;
            }

            //Editamos la unidad
            this.Editar();

            //Redirigimos al detalle de la unidad
            this.vista.LimpiarSesion();
            this.vista.LimpiarPaqueteNavegacion("UnidadExpedienteBO");
            var unidadID = this.vista.UnidadID;

            //Se envía los datos de la interfaz al diccionario del reporte
            //Se obtiene los Datos para el reporte.
            DataSet   DsBajas = new DataSet();
            DataTable table   = DsBajas.Tables["DatosBaja"];

            UnidadBO oBajas = new UnidadBO()
            {
                UnidadID = unidadID, UUA = this.vista.UsuarioID
            };

            string Empresa   = this.vista.EmpresaActualNombre;
            bool   siniestro = this.vista.Siniestro;
            string Tipo      = this.vista.TipoUnidadNombre;
            int?   IdUsuario = this.vista.UsuarioID;

            int?ModuloID = this.vista.ModuloID;

            Dictionary <string, Object> datos = this.controlador.ObtenerDatosReporte(dctx, oBajas, unidadID, ModuloID, Empresa, siniestro, Tipo, IdUsuario);

            #region Asignar la Unidad

            if (datos.ContainsKey("Unidad") && datos["Unidad"] != null)
            {
                oBajas = (UnidadBO)datos["Unidad"];
            }
            #endregion
            #region Obtener el folio del reporte
            ConsultarFolioDA consultarFolio = new ConsultarFolioDA();
            InsertarFolioDAO insertarFolio  = new InsertarFolioDAO();

            int     folio   = 1;
            string  serie   = "AF";
            DataSet dsFolio = new DataSet();
            dsFolio = consultarFolio.Action(dctx, oBajas.Sucursal.Id, ETipoFoliador.Baja_Unidad);
            if (dsFolio.Tables.Contains("Folios") && dsFolio.Tables["Folios"].Rows.Count > 0)
            {
                folio = dsFolio.Tables["Folios"].Rows[0].Field <int>("Folio") + 1;

                AuditoriaBO auditoriaBO = new AuditoriaBO
                {
                    FC  = DateTime.Now,
                    FUA = DateTime.Now,
                    UC  = this.vista.UsuarioID,
                    UUA = this.vista.UsuarioID
                };

                insertarFolio.Action(dctx, this.vista.SucursalActualID, serie, folio, ETipoFoliador.Baja_Unidad, auditoriaBO);
            }
            else
            {
                AuditoriaBO auditoriaBO = new AuditoriaBO
                {
                    FC  = DateTime.Now,
                    FUA = DateTime.Now,
                    UC  = this.vista.UsuarioID,
                    UUA = this.vista.UsuarioID
                };

                insertarFolio.Action(dctx, this.vista.SucursalActualID, serie, folio, ETipoFoliador.Baja_Unidad, auditoriaBO);
            }
            datos.Add("Folio", serie + folio);
            #endregion
            datos.Add("CentroCostos", this.vista.CentroCostos.Trim().ToUpper());
            datos.Add("UnidadBO", datos);
            this.vista.EstablecerPaqueteNavegacionReporte("BajaUnidad", datos);

            if (unidadID.HasValue)
            {
                this.vista.EstablecerPaqueteNavegacion("UnidadExpedienteBO", new UnidadBO {
                    UnidadID = unidadID
                });
            }

            #region Generar el correo para enviar a los autorizadores
            if (this.vista.UnidadOperativaID == (int)ETipoEmpresa.Generacion || this.vista.UnidadOperativaID == (int)ETipoEmpresa.Construccion ||
                this.vista.UnidadOperativaID == (int)ETipoEmpresa.Equinova)
            {
                int    moduloID         = (int)this.vista.ModuloID;
                byte[] reporte          = this.GenerarReporteAdjuntar(datos);
                Enum   TipoAutorizacion = this.vista.UnidadOperativaID == (int)ETipoEmpresa.Generacion ? (Enum)ETipoAutorizacionGeneracion.Baja_Unidad :
                                          this.vista.UnidadOperativaID == (int)ETipoEmpresa.Construccion ? (Enum)ETipoAutorizacionConstruccion.Baja_Unidad :
                                          (Enum)ETipoAutorizacionEquinova.Baja_Unidad;

                AutorizadorBR oAutorizador = new AutorizadorBR();
                #region Crear el Diccionario para reemplazar los valores del formato con los de la entrega.
                Dictionary <string, string> datosAutorizacion = new Dictionary <string, string>();
                #endregion
                string error = string.Empty;
                try
                {
                    oAutorizador.SolicitarAutorizacion(dctx, TipoAutorizacion, datosAutorizacion, moduloID, this.vista.UnidadOperativaID, this.vista.SucursalActualID, reporte);
                }
                catch (Exception ex)
                {
                    error = ex.Message;
                }
            }
            #endregion

            this.vista.RedirigirADetalles(true);
        }