예제 #1
0
        public static bool CerrarNoConformidad(int noConformidadId,
                                               string fechaCierreNc,
                                               bool cerroEnFecha)
        {
            try
            {
                DateTime fechaActualizar = DateTime.Parse(fechaCierreNc);
                const string estatusNc = "Cerrada";
                //tratamos de obtener la NC del Cache si no hay nada la traemos de la BD
                _noConformidad = HttpContext.Current.Session["noConformidad"] != null
                                     ? (AuditoriaNoConformidadInfo)HttpContext.Current.Session["noConformidad"]
                                     : AuditoriaNoConformidadDb.Select(noConformidadId);

                if (_noConformidad.FechaAccionInmediata != DateTime.MinValue & _noConformidad.FechaAccionCierreCausaRaiz == DateTime.MinValue)
                {
                    _noConformidad.FechaCierreNC = cerroEnFecha ? _noConformidad.FechaAccionInmediata : fechaActualizar;
                    _noConformidad.CerroFechaAccionInmediata = cerroEnFecha;
                    _noConformidad.CerroFechaAccionCierre = !cerroEnFecha;
                    _noConformidad.CerroEnFecha = cerroEnFecha;
                }
                else if (_noConformidad.FechaAccionInmediata != DateTime.MinValue & _noConformidad.FechaAccionCierreCausaRaiz != DateTime.MinValue)
                {
                    _noConformidad.FechaCierreNC = cerroEnFecha ? _noConformidad.FechaAccionCierreCausaRaiz : fechaActualizar;
                    _noConformidad.CerroFechaAccionCierre = cerroEnFecha;
                    _noConformidad.CerroFechaAccionInmediata = !cerroEnFecha;
                    _noConformidad.CerroEnFecha = cerroEnFecha;
                }
                else
                {
                    _noConformidad.CerroFechaAccionCierre = false;
                    _noConformidad.CerroFechaAccionInmediata = false;
                    _noConformidad.CerroEnFecha = cerroEnFecha;
                    _noConformidad.FechaCierreNC = fechaActualizar;
                }
                _noConformidad.AuditoriaNCEstatus = estatusNc;
                AuditoriaNoConformidadDb.Update(_noConformidad);
                CalidadPlanTrabajoDb.CerrarNC(_noConformidad.CodigoNoConformidad, estatusNc, estatusNc, fechaActualizar);
                HttpContext.Current.Session.Remove("noConformidad");
                return true;
            }
            catch (Exception ex)
            {
                return false;
            }
        }
예제 #2
0
        private void LoadData(int noConformidadId)
        {
            _noConformidad = AuditoriaNoConformidadDb.Select(noConformidadId);
            _causasRaices = AuditoriaCausaRaizDb.SelectAll();
            _responsables = CargoDb.SelectAll();

            Utils.anexarCombo(ref auditoriaCausaRaizId, "Descripcion", "AuditoriaCausaRaizId", _causasRaices);
            Utils.anexarCombo(ref responsableCierre, "Descripcion", "CargoId", _responsables);

            auditoriaCausaRaizId.DataBind();
            responsableCierre.DataBind();
            auditoriaNoConformidadId.Text = _noConformidad.AuditoriaNoConformidadId.ToString(CultureInfo.InvariantCulture);
            auditoriaNCEstatus.Text = _noConformidad.AuditoriaNCEstatus;
            codigoNoConformidad.Text = _noConformidad.CodigoNoConformidad;
            fechaEmision.Text = _noConformidad.FechaEmision.ToShortDateString();
            auditorAsignado.Text = AuditorDb.Select(_noConformidad.AuditorAsignado).NombreAuditor;
            auditoriaCausaRaizId.SelectedValue = _noConformidad.AuditoriaCausaRaizId.ToString(CultureInfo.InvariantCulture);
            auditoriaControlId.Text = AuditoriaControlDb.Select(_noConformidad.AuditoriaControlId).Descripcion;
            auditoriaPuntoId.Text = AuditoriaPuntoDb.Select(_noConformidad.AuditoriaPuntoId).Descripcion;
            responsableCierre.SelectedValue = _noConformidad.ResponsableCierre.ToString();
            auditoriaTipoId.Text = AuditoriaTipoDb.Select(_noConformidad.AuditoriaTipoId).Descripcion;
            descripcion.Text = _noConformidad.Descripcion;

            mensajeCritico.Visible = _noConformidad.EsCritica;

            //Panel2.Enabled = !String.IsNullOrEmpty(_noConformidad.AccionInmediata);
            accionInmediata.Text = _noConformidad.AccionInmediata;
            fechaAccionInmediata.Text = _noConformidad.FechaAccionInmediata.ToNoDefaultDate();

            //Panel3.Enabled = !String.IsNullOrEmpty(_noConformidad.AccionCausaRaiz);
            accionCausaRaiz.Text = _noConformidad.AccionCausaRaiz;
            fechaAccionCierreCausaRaiz.Text = _noConformidad.FechaAccionCierreCausaRaiz.ToNoDefaultDate();

            lvDescargos.DataSource =
                AuditoriaNoConformidadDescargoDb.SelectByAuditoriaNoConformidadId(noConformidadId);
            lvDescargos.DataBind();

            Session.Add("noConformidad", _noConformidad);
        }