public EntGoodsCart GetFlashDealPrice(EntGoodsCart cartItem, FlashDealItem flashItem) { if (flashItem == null || flashItem.Id == 0) { return(cartItem); } FlashItemSpec flashItemSpec = null; if (!string.IsNullOrWhiteSpace(cartItem.SpecIds)) { flashItemSpec = flashItem.GetSpecs().FirstOrDefault(spec => spec.Id == cartItem.SpecIds); } if (flashItemSpec != null) { cartItem.Price = flashItemSpec.DealPrice; cartItem.originalPrice = flashItemSpec.OrigPrice; } else { cartItem.Price = flashItem.DealPrice; cartItem.originalPrice = flashItem.OrigPrice; } //折扣最低0.01元 //cartItem.Price = cartItem.Price <= 0 ? 1 : cartItem.Price; return(cartItem); }
public bool CheckInputVaild(FlashDealItem item, out string errorMsg) { errorMsg = string.Empty; if (item.DealPrice <= 0) { errorMsg = "请正确填写秒杀物品的秒杀价格"; return(false); } if (string.IsNullOrWhiteSpace(item.Title)) { errorMsg = "秒杀物品标题不能为空"; return(false); } List <FlashItemSpec> itemSpec = null; if (!string.IsNullOrWhiteSpace(item.Specs)) { try { itemSpec = JsonConvert.DeserializeObject <List <FlashItemSpec> >(item.Specs); } catch { } } if (itemSpec?.Count > 0) { FlashItemSpec invalidInput = itemSpec.FirstOrDefault(spec => spec.DealPrice <= 0); if (invalidInput != null) { errorMsg = $"请正确设置{invalidInput.Name}的秒杀价格"; return(false); } } return(true); }
//public FlashDealItem GetByEntGood(EntGoods good) //{ // return GetBySourceIdAid(sourceId: good.id, Aid: good.aid, state: (int)FlashItemState.使用中); //} public EntGoods GetFlashDealPrice(EntGoods good, FlashDealItem flashItem) { if (flashItem == null || flashItem.Id == 0) { return(good); } List <FlashItemSpec> flashItemSpecs = flashItem.GetSpecs(); List <EntGoodsAttrDetail> formatAttr = good.GASDetailList?.Where(attr => flashItemSpecs.Exists(spec => spec.Id == attr.id)).ToList(); formatAttr?.ForEach(attr => { FlashItemSpec spec = flashItemSpecs.Find(item => item.Id == attr.id); attr.discountPrice = float.Parse((spec.DealPrice * 0.01).ToString("0.00")); attr.originalPrice = float.Parse((spec.OrigPrice * 0.01).ToString("0.00")); }); good.specificationdetail = JsonConvert.SerializeObject(formatAttr); good.originalPrice = float.Parse((flashItem.OrigPrice * 0.01).ToString("0.00")); good.discountPrice = float.Parse((flashItem.DealPrice * 0.01).ToString("0.00")); return(good); }