void InsertExpedienteAutoridad()
{
BPVisitaduria oBPVisitaduria = new BPVisitaduria();
ENTVisitaduria oENTVisitaduria = new ENTVisitaduria();
ENTResponse oENTResponse = new ENTResponse();
Int32 AutoridadId = 0;
try
{
// Validaciones
if (this.ddlAutoridadNivel1.SelectedValue == "0") { throw new Exception("Debe elegir una autoridad de primer nivel"); }
if (this.ddlAutoridadNivel2.SelectedValue == "0") { throw new Exception("Debe elegir una autoridad de segundo nivel"); }
if (this.ddlAutoridadNivel3.SelectedValue == "0") { throw new Exception("Debe elegir una autoridad de tercer nivel"); }
if (this.ddlCalificacionAutoridad.SelectedValue == "0") { throw new Exception("Debe seleccionar una calificación para la autoridad"); }
if (this.ddlCalificacionAutoridad.SelectedValue == "1") { throw new Exception("Debe seleccionar una calificación para la autoridad"); }
if (String.IsNullOrEmpty(this.tbActionNombreFuncionario.Text)) { throw new Exception("El campo [Nombre] es requerido"); }
if (String.IsNullOrEmpty(this.tbActionPuestoActual.Text)) { throw new Exception("El campo [Puesto Actual] es requerido"); }
if (String.IsNullOrEmpty(this.tbActionComentarios.Text)) { throw new Exception("El campo [Comentarios] es requerido"); }
// Determinar la última autoridad seleccionada
AutoridadId = Convert.ToInt32(this.ddlAutoridadNivel1.SelectedValue);
if (this.ddlAutoridadNivel2.SelectedIndex > 0) { AutoridadId = Convert.ToInt32(this.ddlAutoridadNivel2.SelectedValue); }
if (this.ddlAutoridadNivel3.SelectedIndex > 0) { AutoridadId = Convert.ToInt32(this.ddlAutoridadNivel3.SelectedValue); }
// Formulario
oENTVisitaduria.ExpedienteId = Int32.Parse(this.hddExpedienteId.Value);
oENTVisitaduria.AutoridadId = AutoridadId;
oENTVisitaduria.CalificacionAutoridadId = Int32.Parse(this.ddlCalificacionAutoridad.SelectedItem.Value);
oENTVisitaduria.ModuloId = 3; // Visitadurías
oENTVisitaduria.Nombre = tbActionNombreFuncionario.Text;
oENTVisitaduria.Puesto = tbActionPuestoActual.Text;
oENTVisitaduria.Comentario = tbActionComentarios.Text;
// Transacción
oENTResponse = oBPVisitaduria.InsertExpedienteAutoridad(oENTVisitaduria);
//Validaciones
if (oENTResponse.GeneratesException) { throw new Exception(oENTResponse.sErrorMessage); }
if (oENTResponse.sMessage != "") { throw new Exception(oENTResponse.sMessage); }
// Refrescar pantalla principal
SelectExpediente();
// Transacción exitosa
this.pnlAction.Visible = false;
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), Convert.ToString(Guid.NewGuid()), "alert('Autoridad creada con éxito');", true);
}catch (Exception ex){
throw (ex);
}
}