Example #1
0
        /// <summary>
        ///     添加BFE采购订单行
        /// </summary>
        /// <param name="price">单价</param>
        /// <param name="amount">数量</param>
        /// <param name="discount">折扣</param>
        /// <param name="delivery">预计交付日期</param>
        /// <returns>BFE采购订单行</returns>
        public BFEPurchaseOrderLine AddNewBFEPurchaseOrderLine(decimal price, int amount, decimal discount,
            DateTime delivery)
        {
            var bfePurchaseOrderLine = new BFEPurchaseOrderLine();
            bfePurchaseOrderLine.GenerateNewIdentity();

            bfePurchaseOrderLine.OrderId = Id;
            bfePurchaseOrderLine.UnitPrice = price;
            bfePurchaseOrderLine.Amount = amount;
            bfePurchaseOrderLine.Discount = discount;
            bfePurchaseOrderLine.EstimateDeliveryDate = delivery;

            OrderLines.Add(bfePurchaseOrderLine);

            return bfePurchaseOrderLine;
        }
Example #2
0
        /// <summary>
        ///     更新订单行
        /// </summary>
        /// <param name="line">订单行DTO</param>
        /// <param name="orderLine">订单行</param>
        private void UpdateOrderLine(BFEPurchaseOrderLineDTO line, BFEPurchaseOrderLine orderLine)
        {
            // 获取飞机物料机型
            var material =
                _materialRepository.GetFiltered(m => m.Id == line.BFEMaterialId)
                    .OfType<BFEMaterial>()
                    .FirstOrDefault();
            if (material == null)
            {
                throw new ArgumentException("未能获取飞机物料!");
            }

            // 更新订单行
            orderLine.UpdateOrderLine(line.UnitPrice, line.Amount, line.Discount, line.EstimateDeliveryDate);
            orderLine.SetBFEMaterial(line.BFEMaterialId);
        }