/// <summary> /// 配置活动配送方式配送费,配送时间 /// </summary> /// <returns></returns> void SetPicking(ActivityModel input, ConglomerationActivity conglomerationActivity) { if (conglomerationActivity.Id != 0) { var oldConglomerationActivityPickingSetting = db.ConglomerationActivityPickingSetting.Where(m => m.ConglomerationActivityId.Equals(conglomerationActivity.Id) && !m.IsDel); if (oldConglomerationActivityPickingSetting.Count() != 0) { foreach (var ConglomerationActivityPickingSettingItem in oldConglomerationActivityPickingSetting) { ConglomerationActivityPickingSettingItem.IsDel = true; } db.SaveChanges(); } } conglomerationActivity.DeliveryTakeTheirBeginTimeHM = input.DeliveryTakeTheirBeginTimeHM; conglomerationActivity.DeliveryTakeTheirBeginTimeMD = input.DeliveryTakeTheirBeginTimeMD; conglomerationActivity.DeliveryTakeTheirEndTimeHM = input.DeliveryTakeTheirEndTimeHM; conglomerationActivity.DeliveryTakeTheirEndTimeMD = input.DeliveryTakeTheirEndTimeMD; conglomerationActivity.ActivityDeliveryFee = (int)input.ActivityDeliveryFee; List <ConglomerationActivityPickingSetting> addList = new List <ConglomerationActivityPickingSetting>(); foreach (var type in input.Type.Distinct()) { ConglomerationActivityPickingSetting conglomerationActivityPickingSetting = new ConglomerationActivityPickingSetting() { ConglomerationActivityId = input.ConglomerationActivityId, Type = (ConsignmentType)type, CreateTime = DateTime.Now }; switch (conglomerationActivityPickingSetting.Type) { case ConsignmentType.快递: conglomerationActivityPickingSetting.PickingSettingName = "快递"; break; case ConsignmentType.自提: conglomerationActivityPickingSetting.PickingSettingName = "自提"; break; } addList.Add(conglomerationActivityPickingSetting); } db.ConglomerationActivityPickingSetting.AddRange(addList); db.SaveChanges(); }
/// <summary> /// 快递配置(配送) /// </summary> /// <param name="db"></param> /// <param name="conglomerationOrder"></param> /// <returns></returns> private ConglomerationOrder TakeOutSetting(ShopDbContext db, ConglomerationOrder conglomerationOrder, ShopConglomerationOrderDto shopConglomerationOrderDto, ConglomerationActivity conglomerationActivity) { if (conglomerationOrder.Type.Equals(ConsignmentType.快递)) { ConglomerationExpress conglomerationExpress = new ConglomerationExpress(); conglomerationExpress.CreateTime = DateTime.Now; conglomerationExpress.Delivery = conglomerationOrder.Delivery.Value; conglomerationExpress.ExpressSingle = "未发货"; conglomerationExpress.MemberAddressId = shopConglomerationOrderDto.MemberAddressId; conglomerationExpress.ShopConglomerationOrderId = conglomerationOrder.Id; var memberAddress = db.Query <MemberAddress>() .FirstOrDefault(m => !m.IsDel && m.Id.Equals(conglomerationExpress.MemberAddressId)); if (memberAddress == null) { throw new Exception("请先设置配送地址"); } conglomerationExpress.Address = $"{ memberAddress.Province}{ memberAddress.City}{ memberAddress.Area}{ memberAddress.Detail}"; conglomerationExpress.Phone = memberAddress.Phone; conglomerationExpress.Name = memberAddress.Name; conglomerationExpress.Sex = memberAddress.Sex; conglomerationExpress.ActivityDeliveryFee = conglomerationActivity.ActivityDeliveryFee; conglomerationExpress = db.ConglomerationExpress.Add(conglomerationExpress).Entity; db.SaveChanges(); conglomerationOrder.ConglomerationExpressId = conglomerationExpress.Id; } return(conglomerationOrder); }