示例#1
0
        /// <summary>
        /// Step 2. 在商务报表中查找符合条件的"抵消前期暂估"
        /// </summary>
        /// <param name="buyModel"></param>
        /// <param name="mappingModelList"></param>
        private static void Step2_PromotionDiXiaoQianQiZanGu(BuyModel buyModel, List <MappingModel> mappingModelList)
        {
            //在商务报表中查找货号
            var mappingModelList_Buy  = mappingModelList.Where(v => v.ProductNo.Equals(buyModel.ProductNo) && v.MaiMai == 2).ToList();
            var mappingModelList_Sell = mappingModelList.Where(v => v.ProductNo.Equals(buyModel.ProductNo) && v.MaiMai == 1 && v.FaPiaoShiJian != DateTime.MinValue && !string.IsNullOrEmpty(v.FaPiaoHaoMa)).ToList();

            var buyTotalCount  = mappingModelList_Buy.Sum(v => v.KaiChuShouDaoFaPiaoDunShu);
            var sellTotalCount = mappingModelList_Sell.Sum(v => v.KaiChuShouDaoFaPiaoDunShu);

            if (buyTotalCount == sellTotalCount)
            {
                buyModel.SetSellMode(BuyModelSaleMode.DiXiaoQianQiZanGu);
                buyModel.RelativeBusinessIds.AddRange(mappingModelList_Buy.Select(v => v.Id));
                buyModel.RelativeBusinessIds.AddRange(mappingModelList_Sell.Select(v => v.Id));
                buyModel.RelativeBusinessIds.RemoveAll(v => v == buyModel.Id);
            }
        }