protected override bool esValido() { ep = ctx.CONSORCIOSUTXC.Where(t => t.IDE_TER == oDto.IDE_TER && t.ID_MIEMBROS == oDto.ID_MIEMBROS).FirstOrDefault(); if (ep != null) { Entities ctx2 = new Entities(); List<CONSORCIOSUTXC> lConso = ctx2.CONSORCIOSUTXC.Where(t => t.IDE_TER == oDto.IDE_TER).ToList(); decimal porcentajeAct = 0; foreach (CONSORCIOSUTXC item in lConso) { if (oDto.ID_MIEMBROS != item.ID_MIEMBROS) porcentajeAct = porcentajeAct + (decimal)item.PORC_PART; } decimal porcentajeRestante = 100 - porcentajeAct; if (oDto.PORC_PART > porcentajeRestante) { byaRpt.Mensaje = "La suma de los porcentajes de partisipación supera el " + porcentajeRestante + "% que esta disponible!!!"; byaRpt.Error = true; return false; } else return true; } else { byaRpt.Error = true; byaRpt.Mensaje = "Este miembro no ha sido agregado..."; return false; } }
protected override void Antes() { ep = new CONSORCIOSUTXC(); Entities ctx2 = new Entities(); int oldId; CONSORCIOSUTXC old = ctx2.CONSORCIOSUTXC.OrderByDescending(t => t.ID).FirstOrDefault(); if (old == null) oldId = 0; else oldId = (int)old.ID; Mapper.Map(oDto, ep); ep.ID = oldId + 1; ep.FEC_REG = DateTime.Now; ctx.CONSORCIOSUTXC.Add(ep); }