static void CheckOldAndNew(Ingreso egreso, IngresoItem request, IngresoItem oldData, DALProxy proxy, int idUsuario) { egreso.ValidateAndThrowHttpError(Operaciones.Update); egreso.CheckPeriodo(proxy); oldData.CheckCentro(proxy,egreso.IdSucursal, idUsuario); IngresoItem data = new IngresoItem(); data.PopulateWith(oldData); if(request.IdCentro!=default(int) && request.IdCentro!=data.IdCentro) { data.IdCentro=request.IdCentro; data.CheckCentro(proxy, egreso.IdSucursal, idUsuario); } if(request.IdPresupuestoItem!=default(int) && request.IdPresupuestoItem!= data.IdPresupuestoItem) data.IdPresupuestoItem= request.IdPresupuestoItem; if(request.TipoPartida!=default(short) && request.TipoPartida!=data.TipoPartida) data.TipoPartida=request.TipoPartida; if(request.Valor!=default(decimal) && request.Valor!=data.Valor) data.Valor=request.Valor; request.PopulateWith(data); }
static PresupuestoItem CheckPresupuestoItem(DALProxy proxy,IngresoItem egresoItem) { PresupuestoItem pi = DAL.GetPresupuestoItem(proxy, egresoItem.IdPresupuestoItem); pi.AssertExists(egresoItem.IdPresupuestoItem); return pi; }
static PresupuestoItem Check1(DALProxy proxy, IngresoItem request, int idUsuario) { PresupuestoItem pi = CheckPresupuestoItem(proxy,request); Presupuesto pr =DAL.GetPresupuestoById(proxy,pi.IdPresupuesto); pr.AssertExists(pi.IdPresupuesto); Centro centro= proxy.FirstOrDefaultById<Centro>(request.IdCentro); centro.AssertExists(request.IdCentro); IngresoItemAlCrear ei = new IngresoItemAlCrear(){ NewItem=request, Prs= pr, Pi= pi, CentroItem= centro }; IngresoItemAlCrearValidador eiv = new IngresoItemAlCrearValidador(); eiv.ValidateAndThrowHttpError(ei, IngresoItemAlCrear.Regla1); pi.CheckUsuarioGiradora(proxy, idUsuario, null); request.CodigoItem= pi.Codigo; request.NombreItem= pi.Nombre; request.NombreCentro=centro.Nombre; return pi; }