コード例 #1
0
        public PendingQuoteItem EditPending(
            Guid pendingItemId, decimal labour, decimal calibration, decimal parts, decimal carriage, decimal investigation, string report, int days, bool beyondEconomicRepair, string orderNo, string adviceNo)
        {
            if (!CurrentUser.HasRole(UserRole.Member))
            {
                throw new DomainValidationException(Messages.InsufficientSecurity, "CurrentUser");
            }
            var pendingItem = _quoteItemRepository.GetPendingQuoteItem(pendingItemId);

            if (pendingItem == null)
            {
                throw new ArgumentException("A valid ID must be supplied for the pending item");
            }
            pendingItem.OrderNo              = orderNo;
            pendingItem.AdviceNo             = adviceNo;
            pendingItem.Labour               = GetLabour(labour);
            pendingItem.Calibration          = GetCalibration(calibration);
            pendingItem.Parts                = GetParts(parts);
            pendingItem.Carriage             = GetCarriage(carriage);
            pendingItem.Investigation        = GetInvestigation(investigation);
            pendingItem.Days                 = GetDays(days);
            pendingItem.Report               = report;
            pendingItem.BeyondEconomicRepair = beyondEconomicRepair;
            ValidateAnnotatedObjectThrowOnFailure(pendingItem);
            _quoteItemRepository.UpdatePendingItem(pendingItem);
            return(pendingItem);
        }