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; } }
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); }