public dynamic GuardarDetallePresupuesto(DbPresupuestoPrograma request) { return(_dataModelRepository.GuardarPresupuestoDetalle(request)); }
public dynamic UpdateDetallePresupuesto(DbPresupuestoPrograma request) { return(_dataModelRepository.ActualizarPresupuesto(request)); }
public static long Copiar(IContextFactory factory, IOptions <ConnectionDB> connection, long IdPresupuestoAnio) { long id = 0; using (Aldeas_Context db = factory.Create(connection)) { var data = from pro in db.TbPresupuestoAnio where pro.id == IdPresupuestoAnio && pro.actual == true select pro; if (data.Any()) { #region Copiamos 01 Presupuesto Anio int numVersion = 0; numVersion = data.First().numeroVersion + 1; var conteo = from pro in db.TbPresupuestoAnio where pro.idPrograma == data.First().idPrograma && pro.Anio == data.First().Anio select pro; numVersion = conteo.Count() + 1; var nuevo = new DbPresupuestoAnio() { actual = true, fecha_creacion = DateTime.Now, fecha_actualizacion = DateTime.Now, per_capacitacion = data.First().per_capacitacion, per_nomina = data.First().per_capacitacion, idPrograma = data.First().idPrograma, numeroVersion = numVersion, Anio = data.First().Anio, }; db.TbPresupuestoAnio.Add(nuevo); db.SaveChanges(); data.First().actual = false; data.First().fecha_actualizacion = DateTime.Now; db.SaveChanges(); id = nuevo.id; #endregion #region Copiamos 02 Presupuesto coberturas var dataCoberturas = from pro in db.TbPresupuestos where pro.idPresupuestoAnio == IdPresupuestoAnio select pro; List <DbPresupuestoPrograma> presupuestoProgramasCopia = new List <DbPresupuestoPrograma>(); if (dataCoberturas.Any()) { foreach (var copia in dataCoberturas.ToList()) { long idCoberturaCopia = 0; var coberturaCopia = new DbPresupuesto { Anio = copia.Anio, idPresupuestoAnio = id, idPrograma = copia.idPrograma, idFinanciador = copia.idFinanciador, IdProgramaCecos = copia.IdProgramaCecos, NombreContrato = copia.NombreContrato, CoberturaAnual = copia.CoberturaAnual, CoberturaMensual = copia.CoberturaMensual, CoberturaMensualEsperada = copia.CoberturaMensualEsperada, CoberturasCasas = copia.CoberturasCasas, fecha_actualizacion = DateTime.Now, fecha_creacion = DateTime.Now }; db.TbPresupuestos.Add(coberturaCopia); db.SaveChanges(); idCoberturaCopia = coberturaCopia.id; var dataItemsCobertura = from pro in db.TbPresupuestosProgramas where pro.idPresupuesto == copia.id select pro; if (dataItemsCobertura.Any()) { foreach (var copiaItem in dataItemsCobertura.ToList()) { var nuevoCopiaItem = new DbPresupuestoPrograma { idPresupuesto = idCoberturaCopia, idProgramaCecos = copiaItem.idProgramaCecos, idRubroPucs = copiaItem.idRubroPucs, esNomina = copiaItem.esNomina, esPPTO = copiaItem.esPPTO, NumeroIdentificacion = copiaItem.NumeroIdentificacion, Nombre = copiaItem.Nombre, Cargo = copiaItem.Cargo, Asignacion = copiaItem.Asignacion, NoCasa = copiaItem.NoCasa, NoKids = copiaItem.NoKids, NotaIngles = copiaItem.NotaIngles, DetalleGasto = copiaItem.DetalleGasto, Enero = copiaItem.Enero, Febrero = copiaItem.Febrero, Marzo = copiaItem.Marzo, Abril = copiaItem.Abril, Mayo = copiaItem.Mayo, Junio = copiaItem.Junio, Julio = copiaItem.Julio, Agosto = copiaItem.Agosto, Septiembre = copiaItem.Septiembre, Octubre = copiaItem.Octubre, Noviembre = copiaItem.Noviembre, Diciembre = copiaItem.Diciembre, Total = copiaItem.Total, TotalAnual = copiaItem.TotalAnual, fecha_actualizacion = DateTime.Now, fecha_creacion = DateTime.Now }; presupuestoProgramasCopia.Add(nuevoCopiaItem); } if (presupuestoProgramasCopia.Count > 0) { db.TbPresupuestosProgramas.AddRange(presupuestoProgramasCopia); db.SaveChanges(); presupuestoProgramasCopia = new List <DbPresupuestoPrograma>(); } } } } #endregion } else { return(0); } } return(id); }
public dynamic ActualizarPresupuesto(DbPresupuestoPrograma request) { return(PresupuestoOperations.ActualizarPresupuestoProgramas(_factory, _connectionDB, request)); }
public dynamic GuardarPresupuestoDetalle(DbPresupuestoPrograma request) { return(PresupuestoOperations.GuardarDetallePresupuesto(_factory, _connectionDB, request)); }
public static dynamic ActualizarPresupuestoProgramas(IContextFactory factory, IOptions <ConnectionDB> connection, DbPresupuestoPrograma datos) { using (Aldeas_Context db = factory.Create(connection)) { var data = from pro in db.TbPresupuestosProgramas where pro.id == datos.idPresupuesto select pro; if (data.Any()) { int porcentaje = 0; if (datos.Asignacion != null) { porcentaje = (int)datos.Asignacion / 100; } data.First().NumeroIdentificacion = datos.NumeroIdentificacion == null? null: datos.NumeroIdentificacion; data.First().Nombre = datos.Nombre; data.First().Cargo = datos.Cargo; data.First().Asignacion = datos.Asignacion == null ? null : datos.Asignacion; data.First().NoCasa = datos.NoCasa == null ? null : datos.NoCasa; data.First().NoKids = datos.NoKids == null ? null : datos.NoKids; data.First().Enero = datos.Enero; data.First().Febrero = datos.Febrero; data.First().Marzo = datos.Marzo; data.First().Abril = datos.Abril; data.First().Mayo = datos.Mayo; data.First().Junio = datos.Junio; data.First().Julio = datos.Julio; data.First().Agosto = datos.Agosto; data.First().Septiembre = datos.Septiembre; data.First().Octubre = datos.Octubre; data.First().Noviembre = datos.Noviembre; data.First().Diciembre = datos.Diciembre; data.First().NotaIngles = datos.NotaIngles; data.First().DetalleGasto = datos.DetalleGasto; data.First().Total = datos.Enero + datos.Febrero + datos.Marzo + datos.Abril + datos.Mayo + datos.Junio + datos.Julio + datos.Agosto + datos.Septiembre + datos.Octubre + datos.Noviembre + datos.Diciembre; ; data.First().TotalAnual = data.First().Total *porcentaje; datos.fecha_actualizacion = DateTime.Now; db.SaveChanges(); } } return(new { id = 0, status = "OK", code = 200 }); }
public static dynamic GuardarDetallePresupuestoSinCobertura(IContextFactory factory, IOptions <ConnectionDB> connection, DbPresupuestoPrograma datos) { using (Aldeas_Context db = factory.Create(connection)) { if (datos.Cargo == 0) { datos.Cargo = null; } datos.fecha_actualizacion = DateTime.Now; datos.fecha_creacion = DateTime.Now; datos.Total = (datos.Enero + datos.Febrero + datos.Marzo + datos.Abril + datos.Mayo + datos.Junio + datos.Julio + datos.Agosto + datos.Septiembre + datos.Octubre + datos.Noviembre + datos.Diciembre); db.TbPresupuestosProgramas.Add(datos); db.SaveChanges(); } return(new { id = 0, status = "OK", code = 200 }); }