static void CheckBeforePatch(Egreso oldData, Egreso request, DALProxy proxy, int idUsuario, string operacion) { oldData.ValidateAndThrowHttpError(operacion); Egresos egresos= new Egresos(){Nuevo=request, Viejo=oldData}; EgresosValidator ev = new EgresosValidator(); ev.ValidateAndThrowHttpError(egresos,operacion); oldData.CheckSucursal(proxy,idUsuario); oldData.CheckPeriodo(proxy); request.PopulateWith(oldData); }
static void CheckOldAndNew(Egreso oldData, Egreso request, DALProxy proxy, int idUsuario) { oldData.ValidateAndThrowHttpError(Operaciones.Update); Egresos egresos= new Egresos(){Nuevo=request, Viejo=oldData}; EgresosValidator ev = new EgresosValidator(); ev.ValidateAndThrowHttpError(egresos,Operaciones.Update); oldData.CheckSucursal(proxy, idUsuario); var data = new Egreso(); data.PopulateWith(oldData); if( request.Fecha!=default(DateTime) && request.Fecha!=data.Fecha) { data.Fecha=request.Fecha; data.Periodo= data.Fecha.ObtenerPeriodo(); } data.CheckPeriodo(proxy); if(request.IdTercero!=default(int) && request.IdTercero!=data.IdTercero) { data.IdTercero=request.IdTercero; var tercero=data.CheckTercero(proxy); data.NombreDocumentoTercero=tercero.NombreDocumento; data.NombreTercero=tercero.Nombre; data.DocumentoTercero=tercero.Documento; data.DVTercero= tercero.DigitoVerificacion; } if(request.IdTerceroReceptor.HasValue && request.IdTerceroReceptor.Value!=default(int)) { if(!data.IdTerceroReceptor.HasValue || (data.IdTerceroReceptor.HasValue && data.IdTerceroReceptor.Value!=request.IdTerceroReceptor.Value)) { data.IdTerceroReceptor=request.IdTerceroReceptor; var tr =data.CheckTerceroReceptor(proxy); data.DocumentoReceptor= tr.Documento; data.NombreDocumentoReceptor= tr.NombreDocumento; data.NombreReceptor=tr.Nombre; data.DVReceptor= tr.DigitoVerificacion; } } if(!request.Documento.IsNullOrEmpty() && request.Documento!=data.Documento) data.Documento=request.Documento; if(!request.Descripcion.IsNullOrEmpty() && request.Descripcion!=data.Descripcion) data.Descripcion=request.Descripcion; if(request.DiasCredito!=data.DiasCredito) data.DiasCredito=request.DiasCredito; request.PopulateWith(data); }