private bool ValidateWorkitemAndCommitOnSuccess(Workitem item, IDictionary <Asset, double> efforts, IDictionary <Asset, List <RequiredFieldsDto> > validationResults)
        {
            var itemValidationResult = requiredFieldsValidator.Validate(item.Asset);

            if (itemValidationResult.Count == 0)
            {
                item.CommitChanges();
                //TODO do we really need 2 commits effort? in item.ComitChanges() effort already commited
                CommitEffort(efforts, item.Asset);
                return(true);
            }

            validationResults.Add(item.Asset, itemValidationResult);
            return(false);
        }