public static object AddRecord(RegistroObra registro) { UnitOfWork uow = new UnitOfWork(HttpContext.Current.Session["IdUser"].ToString()); int unidadpresupuestalId = Utilerias.StrToInt(HttpContext.Current.Session["UnidadPresupuestalId"].ToString()); int ejercicioId = Utilerias.StrToInt(HttpContext.Current.Session["EjercicioId"].ToString()); DataAccessLayer.Models.POA poa = uow.POABusinessLogic.Get(p => p.UnidadPresupuestalId == unidadpresupuestalId & p.EjercicioId == ejercicioId).FirstOrDefault(); POADetalle poadetalle = null; if (poa == null) { poa = new DataAccessLayer.Models.POA(); poa.UnidadPresupuestalId = unidadpresupuestalId; poa.EjercicioId = ejercicioId; } Obra obra = new Obra(); obra.Numero = registro.Numero; obra.Descripcion = registro.Descripcion; obra.MunicipioId = registro.MunicipioId; obra.LocalidadId = registro.LocalidadId; obra.CriterioPriorizacionId = registro.CriterioPriorizacionId; obra.Convenio = registro.Convenio; obra.AperturaProgramaticaId = registro.AperturaProgramaticaId; obra.AperturaProgramaticaUnidadId = registro.UnidadMedidaId; obra.CantidadUnidades = registro.CantidadUnidades; obra.NumeroBeneficiarios = registro.NumeroBeneficiarios; obra.Empleos = registro.Empleos; obra.Jornales = registro.Jornales; obra.SituacionObraId = registro.SituacionObraId; obra.NumeroAnterior = registro.NumeroAnterior; obra.ImporteLiberadoEjerciciosAnteriores = registro.ImporteLiberadoEjerciciosAnteriores; obra.ModalidadObra = (enumModalidadObra)registro.ModalidadEjecucionId; if(registro.FuncionalidadId==0) { obra.FuncionalidadId =null; }else { obra.FuncionalidadId =registro.FuncionalidadId; }; if (registro.EjeId == 0) { obra.EjeId = null; } else { obra.EjeId = registro.EjeId; }; if (registro.PlanSectorialId == 0) { obra.PlanSectorialId = null; } else { obra.PlanSectorialId = registro.PlanSectorialId; }; if (registro.ModalidadPVDId == 0) { obra.ModalidadId = null; } else { obra.ModalidadId = registro.ModalidadPVDId; }; if (registro.ProgramaPVDId == 0) { obra.ProgramaId = null; } else { obra.ProgramaId = registro.ProgramaPVDId; }; if (registro.GrupoBeneficiarioId == 0) { obra.GrupoBeneficiarioId = null; } else { obra.GrupoBeneficiarioId = registro.GrupoBeneficiarioId; }; //Crear un poadetalle para una nueva obra poadetalle = new POADetalle(); poadetalle.Numero = obra.Numero; poadetalle.Descripcion = obra.Descripcion; poadetalle.MunicipioId = obra.MunicipioId; poadetalle.LocalidadId = obra.LocalidadId; poadetalle.CriterioPriorizacionId = obra.CriterioPriorizacionId; poadetalle.Convenio = obra.Convenio; poadetalle.AperturaProgramaticaId = obra.AperturaProgramaticaId; poadetalle.AperturaProgramaticaMetaId = obra.AperturaProgramaticaMetaId; poadetalle.AperturaProgramaticaUnidadId = obra.AperturaProgramaticaUnidadId; poadetalle.NumeroBeneficiarios = obra.NumeroBeneficiarios; poadetalle.CantidadUnidades = obra.CantidadUnidades; poadetalle.Empleos = obra.Empleos; poadetalle.Jornales = obra.Jornales; poadetalle.FuncionalidadId = obra.FuncionalidadId; poadetalle.EjeId = obra.EjeId; poadetalle.PlanSectorialId = obra.PlanSectorialId; poadetalle.ModalidadId = obra.ModalidadId; poadetalle.ProgramaId = obra.ProgramaId; poadetalle.GrupoBeneficiarioId = obra.GrupoBeneficiarioId; poadetalle.SituacionObraId = obra.SituacionObraId; poadetalle.NumeroAnterior = obra.NumeroAnterior; poadetalle.ImporteLiberadoEjerciciosAnteriores = obra.ImporteLiberadoEjerciciosAnteriores; poadetalle.ModalidadObra = obra.ModalidadObra; poadetalle.Observaciones = obra.Observaciones; poadetalle.Extemporanea = true; poadetalle.POA = poa; obra.POA = poa; obra.POADetalle = poadetalle; uow.ObraBusinessLogic.Insert(obra); uow.SaveChanges(); return uow.GetResult(); }
public static object UpdateRecord(RegistroObra registro) { UnitOfWork uow = new UnitOfWork(HttpContext.Current.Session["IdUser"].ToString()); Obra obra = uow.ObraBusinessLogic.GetByID(registro.Id); obra.Numero = registro.Numero; obra.Descripcion = registro.Descripcion; obra.MunicipioId = registro.MunicipioId; obra.LocalidadId = registro.LocalidadId; obra.CriterioPriorizacionId = registro.CriterioPriorizacionId; obra.Convenio = registro.Convenio; obra.AperturaProgramaticaId = registro.AperturaProgramaticaId; obra.AperturaProgramaticaUnidadId = registro.UnidadMedidaId; obra.CantidadUnidades = registro.CantidadUnidades; obra.NumeroBeneficiarios = registro.NumeroBeneficiarios; obra.Empleos = registro.Empleos; obra.Jornales = registro.Jornales; obra.SituacionObraId = registro.SituacionObraId; obra.NumeroAnterior = registro.NumeroAnterior; obra.ImporteLiberadoEjerciciosAnteriores = registro.ImporteLiberadoEjerciciosAnteriores; obra.ModalidadObra = (enumModalidadObra)registro.ModalidadEjecucionId; if (registro.FuncionalidadId == 0) { obra.FuncionalidadId = null; } else { obra.FuncionalidadId = registro.FuncionalidadId; }; if (registro.EjeId == 0) { obra.EjeId = null; } else { obra.EjeId = registro.EjeId; }; if (registro.PlanSectorialId == 0) { obra.PlanSectorialId = null; } else { obra.PlanSectorialId = registro.PlanSectorialId; }; if (registro.ModalidadPVDId == 0) { obra.ModalidadId = null; } else { obra.ModalidadId = registro.ModalidadPVDId; }; if (registro.ProgramaPVDId == 0) { obra.ProgramaId = null; } else { obra.ProgramaId = registro.ProgramaPVDId; }; if (registro.GrupoBeneficiarioId == 0) { obra.GrupoBeneficiarioId = null; } else { obra.GrupoBeneficiarioId = registro.GrupoBeneficiarioId; }; uow.ObraBusinessLogic.Update(obra); uow.SaveChanges(); return uow.GetResult(); }