/// <summary> /// Listado de Avances de actividad por mes /// </summary> /// <param name="CodActividad"> Codigo de actividad </param> /// <returns>Listado de avances por actividad</returns> public List <AvanceActividadPOMes> TraerAvanceActividadPOXMes(string CodActividad) { List <AvanceActividadPOMes> lista = new List <AvanceActividadPOMes>(); try { IDataReader reader; sbQuery = new StringBuilder(); sbQuery.Append("SELECT CodActividad "); sbQuery.Append(" ,Mes "); sbQuery.Append(" ,CodTipoFinanciacion "); sbQuery.Append(" ,Valor "); sbQuery.Append(" ,Observaciones "); sbQuery.Append(" ,CodContacto "); sbQuery.Append(" ,ObservacionesInterventor"); sbQuery.Append(" ,Aprobada "); sbQuery.Append(" FROM AvanceActividadPOMes "); sbQuery.Append(" WHERE codactividad = " + CodActividad); sbQuery.Append(" ORDER By Mes "); db.Open(); reader = db.ExecuteDataReader(sbQuery.ToString(), CommandType.Text); AvanceActividadPOMes oAvance = new AvanceActividadPOMes(); while (reader.Read()) { oAvance = new AvanceActividadPOMes(); oAvance.CodActividad = Convert.ToInt32(reader["CodActividad"]); oAvance.Mes = Convert.ToByte(reader["Mes"]); oAvance.CodTipoFinanciacion = Convert.ToByte(reader["CodTipoFinanciacion"]); oAvance.Valor = Convert.ToDecimal(reader["Valor"]); oAvance.Observaciones = reader["Observaciones"].ToString(); if (!DBNull.Value.Equals(reader["CodContacto"])) { oAvance.CodContacto = Convert.ToInt32(reader["CodContacto"]); } oAvance.ObservacionesInterventor = reader["ObservacionesInterventor"].ToString(); if (!DBNull.Value.Equals(reader["Aprobada"])) { oAvance.Aprobada = Convert.ToBoolean(reader["Aprobada"]); } lista.Add(oAvance); } reader.Close(); } catch (Exception) { throw; } finally { db.Close(); } return(lista); }
private void insertarHistorico(AvanceActividadPOMes avance, decimal aporteEmprendedor, int _CodProyecto) { HistoricoAvanceModel avanceHis = new HistoricoAvanceModel { codActividad = avance.CodActividad, codContacto = usuario.IdContacto, FechaAvanceEmprendedor = avance.FechaAvance, Mes = avance.Mes, ValorFondoEmprender = avance.Valor, ValorAporteEmprendedor = aporteEmprendedor, fechaRegistro = DateTime.Now, ObservacionEmprendedor = avance.Observaciones, ObservacionInterventor = avance.ObservacionesInterventor, FechaAvanceInterventor = avance.FechaAprobacion, Aprobada = avance.Aprobada, codProyecto = _CodProyecto }; AvancesInterventoriaReg.insertarHistoricoPlanOperativo(avanceHis); }
private void Metodos() { var parametros = Session["CodActividad2"].ToString().Split(';'); switch (B_Acion.Text) { case "Crear": var mensaje = Validar(B_Acion.Text); if (string.IsNullOrEmpty(mensaje)) { var consultar = (from aa in consultas.Db.AvanceActividadPOMes where aa.CodActividad == CodActividad && aa.Mes == Mes //int.Parse(parametros[0]) select aa).ToList(); if (consultar.Count == 0) { var avance = new AvanceActividadPOMes { CodActividad = CodActividad, Mes = Convert.ToByte(Mes), CodTipoFinanciacion = 1, Valor = decimal.Parse((!string.IsNullOrEmpty(txt_sueldo_obtenido.Text.Replace(".", ","))) ? txt_sueldo_obtenido.Text : "0"), Observaciones = txt_observaciones.Text, CodContacto = usuario.IdContacto, ObservacionesInterventor = "", Aprobada = false, FechaAvance = DateTime.Now }; consultas.Db.AvanceActividadPOMes.InsertOnSubmit(avance); consultas.Db.SubmitChanges(); var avance2 = new AvanceActividadPOMes { CodActividad = CodActividad, // int.Parse(parametros[0]), Mes = Convert.ToByte(Mes), CodTipoFinanciacion = 2, Valor = decimal.Parse((!string.IsNullOrEmpty(txt_prestaciones_obtenidas.Text)) ? txt_prestaciones_obtenidas.Text.Replace(".", ",") : "0"), Observaciones = txt_observaciones.Text, CodContacto = usuario.IdContacto, ObservacionesInterventor = "", Aprobada = false, FechaAvance = DateTime.Now }; consultas.Db.AvanceActividadPOMes.InsertOnSubmit(avance2); consultas.Db.SubmitChanges(); //Consultar Id Interventor para agendar tarea var datos = (from ei in consultas.Db.EmpresaInterventors join ee in consultas.Db.Empresas on ei.CodEmpresa equals ee.id_empresa join p in consultas.Db.Proyecto on ee.codproyecto equals p.Id_Proyecto where ee.codproyecto == CodProyecto && ei.Inactivo == false select new datosAgendar { idContacto = (int)ei.CodContacto, idProyecto = (int)p.Id_Proyecto, nombre = p.NomProyecto }).ToList(); //Insertar Historico insertarHistorico(avance, avance2.Valor, CodProyecto); var asunto = "Revisar Actividad del Plan Operativo. Se ha creado una actividad."; TareaAgendar(int.Parse(parametros[0]), CodProyecto, usuario.IdContacto, datos[0].idContacto, datos[0].nombre, parametros[1], asunto, txt_observaciones.Text.Trim()); } ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('Avance registrado.'); window.close();", true); } else { ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('" + mensaje + "');", true); } break; case "Actualizar": if (usuario.CodGrupo == Constantes.CONST_Emprendedor) { mensaje = Validar(B_Acion.Text); if (string.IsNullOrEmpty(mensaje)) { var avancesActividad = (from aa in consultas.Db.AvanceActividadPOMes where aa.CodActividad == CodActividad && aa.Mes == Mes //int.Parse(parametros[0]) select aa).ToList(); foreach (var avance in avancesActividad) { avance.FechaAvance = DateTime.Now; avance.Observaciones = txt_observaciones.Text.Trim(); avance.Valor = (avance.CodTipoFinanciacion == 1) ? decimal.Parse((!string.IsNullOrEmpty(txt_sueldo_obtenido.Text.Replace(",00", "").Replace(".00", "").Replace(".", ","))) ? txt_sueldo_obtenido.Text.Replace(",00", "").Replace(".00", "").Replace(".", ",") : "0") : decimal.Parse((!string.IsNullOrEmpty(txt_prestaciones_obtenidas.Text.Replace(",00", "").Replace(".00", "").Replace(".", ","))) ? txt_prestaciones_obtenidas.Text.Replace(",00", "").Replace(".00", "").Replace(".", ",") : "0"); } consultas.Db.SubmitChanges(); //Consultar Id Interventor para agendar tarea var datos = (from ei in consultas.Db.EmpresaInterventors join ee in consultas.Db.Empresas on ei.CodEmpresa equals ee.id_empresa join p in consultas.Db.Proyecto on ee.codproyecto equals p.Id_Proyecto where ee.codproyecto == CodProyecto && ei.Inactivo == false select new datosAgendar { idContacto = (int)ei.CodContacto, idProyecto = (int)p.Id_Proyecto, nombre = p.NomProyecto }).ToList(); decimal valorEmprendedor = decimal.Parse((!string.IsNullOrEmpty(txt_prestaciones_obtenidas.Text)) ? txt_prestaciones_obtenidas.Text.Replace(".", ",") : "0"); var avanceHis = avancesActividad.Where(x => x.CodTipoFinanciacion == 1).FirstOrDefault(); //Insertar Historico insertarHistorico(avanceHis, valorEmprendedor, CodProyecto); var asunto = "Revisar Actividad del Plan Operativo. Se ha modificado una actividad."; TareaAgendar(int.Parse(parametros[0]), CodProyecto, usuario.IdContacto, datos[0].idContacto, datos[0].nombre, parametros[1], asunto, txt_observaciones.Text.Trim()); ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('Información de Plan Operativo procesada correctamente.'); window.close();", true); } else { ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('" + mensaje + "');", true); } } else { mensaje = Validar(B_Acion.Text); if (string.IsNullOrEmpty(mensaje)) { var avancesActividad = (from aa in consultas.Db.AvanceActividadPOMes where aa.CodActividad == CodActividad && aa.Mes == Mes //int.Parse(parametros[0]) select aa).ToList(); foreach (var avance in avancesActividad) { avance.FechaAprobacion = DateTime.Now; avance.ObservacionesInterventor = txt_observ_interventor.Text.Trim(); avance.Aprobada = (dd_aprobado.SelectedValue == "0") ? false : true; } consultas.Db.SubmitChanges(); //consulta Id del emprendedor para agendar tarea var datos = (from pc in consultas.Db.ProyectoContactos join p in consultas.Db.Proyecto on pc.CodProyecto equals p.Id_Proyecto where pc.CodProyecto == CodProyecto && pc.CodRol == 3 && pc.FechaFin == null select new datosAgendar { idContacto = pc.CodContacto, idProyecto = p.Id_Proyecto, nombre = p.NomProyecto }).ToList(); decimal valorEmprendedor = decimal.Parse((!string.IsNullOrEmpty(txt_prestaciones_obtenidas.Text)) ? txt_prestaciones_obtenidas.Text.Replace(".", ",") : "0"); var avanceHis = avancesActividad.Where(x => x.CodTipoFinanciacion == 1).FirstOrDefault(); //Insertar Historico insertarHistorico(avanceHis, valorEmprendedor, CodProyecto); var asunto = "Revisar Actividad del Plan Operativo. Se ha modificado una actividad."; TareaAgendar(int.Parse(parametros[0]), CodProyecto, usuario.IdContacto, datos[0].idContacto, datos[0].nombre, parametros[1], asunto, txt_observaciones.Text.Trim()); ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('Información de Plan Operativo procesada correctamente.'); window.close();", true); } else { ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('" + mensaje + "');", true); } } break; } }