Exemple #1
0
 // Replaced by stored precedure version MoveWorkflowAll above due to performance issue using Entity Framework for bulk db operation
 public RevenueApprovalStatus?BacktrackWorkflowAll(DateTime month, RevenueApprovalStatus state)
 {
     try
     {
         // Too slow to use Entity Framework for bulk upload
         var provider    = new ResolutionRevenueProvider(_context);
         var resolutions = provider.Retrieve(month, string.Empty);
         var prevState   = PrevState(state);
         if (resolutions != null && prevState != null)
         {
             var dataProvider = new ResolutionProvider(_context);
             foreach (var viewModel in resolutions)
             {
                 //BacktrackWorkflow(viewModel.ResolutionId, state);
                 var entity = dataProvider.Retrieve(viewModel.ResolutionId);
                 if (entity != null)
                 {
                     entity.ApprovalStatus = prevState.Value;
                     RetrackWorkflowSignature(entity, state);
                     dataProvider.Update(entity.ResolutionId, entity);
                 }
             }
             dataProvider.Commit();
             return(prevState);
         }
     }
     catch
     {
         throw;
     }
     return(null);
 }
Exemple #2
0
 // Replaced by stored precedure version MoveWorkflowAll above due to performance issue using Entity Framework for bulk db operation
 public RevenueApprovalStatus?MoveWorkflowAll(DateTime month, RevenueApprovalStatus state)
 {
     try
     {
         // Too slow using Entity Framework for bulk upload
         var provider = new ResolutionRevenueProvider(_context);
         List <ResolutionRevenueModel> resolutions = provider.Retrieve(month, string.Empty);
         var nextState = NextState(state);
         if (resolutions != null && nextState != null)
         {
             var dataProvider = new ResolutionProvider(_context);
             foreach (var viewModel in resolutions)
             {
                 //MoveWorkflow(viewModel.ResolutionId, state);
                 var entity = dataProvider.Retrieve(viewModel.ResolutionId);
                 if (entity != null)
                 {
                     entity.ApprovalStatus = state;
                     SetWorkflowSignature(entity, state);
                     dataProvider.Update(entity.ResolutionId, entity);
                 }
             }
             dataProvider.Commit();
             return(nextState);
         }
     }
     catch
     {
         throw;
     }
     return(null);
 }