/// <summary> /// 获取交易订单的拍品列表 /// </summary> /// <param name="tvaid">经销商id</param> /// <returns></returns> public List <BuyCarModel> GetBuyCarModelList(int tvaid) { //return null; string key = "CarList"; AuctionMainFormBiz biz = new AuctionMainFormBiz(); List <BuyCarModel> bcmlist = base.CurrentContext.Session.Get <List <BuyCarModel> >(key); if (bcmlist == null) { bcmlist = new List <BuyCarModel>(); bcmlist = biz.GetBuyCarModelList(tvaid); base.CurrentContext.Session.Set <List <BuyCarModel> >(key, bcmlist); } else if (bcmlist.Count >= 0) { bcmlist.ForEach(p => p.DataStatus = 0); List <BuyCarModel> middlelist = GetAllBuyCarModelList(); foreach (BuyCarModel bcm in bcmlist.ToList()) { BuyCarModel buycarmodel = middlelist.Find(p => p.OrderId == bcm.OrderId); if (buycarmodel != null) { if (bcm.OrderState != buycarmodel.OrderState || bcm.ArbState != buycarmodel.ArbState || bcm.TstResult != buycarmodel.TstResult) { bcmlist.RemoveAll(p => p.OrderId == bcm.OrderId); buycarmodel.DataStatus = 1; bcmlist.Add(buycarmodel); } } } List <BuyCarModel> entitylist = middlelist.FindAll(p => p.BuyTvaId == tvaid && p.TstResult == TstResult.交易中); List <BuyCarModel> tempList = bcmlist.FindAll(p => p.TstResult == TstResult.交易中); if (entitylist != null && entitylist.Count > tempList.Count) { var idlist = (from c in entitylist select c.OrderId).Except(from d in tempList select d.OrderId); List <int> ids = idlist.ToList(); foreach (int orderid in ids) { BuyCarModel bcm = new BuyCarModel(); bcm = middlelist.Find(p => p.OrderId == orderid); bcm.DataStatus = 2; bcmlist.Add(bcm); } } } return(bcmlist.FindAll(p => p.DataStatus != 0)); }