public ActionResult CreateActivity(ProductActivity productActivity) { var currentUser = UserCache.CurrentUser.Id; var result = _productActivityService.CreateProductActivity(productActivity, currentUser); return(Json(result)); }
public ActionResult Edit(string id) { ProductActivity productActivity = new ProductActivity(); if (!string.IsNullOrEmpty(id)) { var pa = _productActivityService.Find <ProductActivity>(id); if (pa != null) { productActivity = pa; } } return(View(productActivity)); }
public bool HandleInventoryReservedEvent(InventoryReservedEvent evt) { Console.WriteLine($"Handling inventory reserved event - {evt.EventId}"); ProductActivity activity = new ProductActivity { OrderId = evt.OrderId, SKU = evt.SKU, Quantity = (int)evt.Quantity, ActivityId = evt.EventId, CreatedOn = DateTime.UtcNow.Ticks, ActivityType = Entities.ActivityType.Reserved }; var result = this.repository.PutActivity(activity); return(result != null); }
public bool HandleInventoryReleasedEvent(InventoryReleasedEvent evt) { Console.WriteLine($"Handling inventory released event - {evt.EventID}"); ProductActivity activity = new ProductActivity { OrderID = evt.OrderID, SKU = evt.SKU, Quantity = (int)evt.Quantity, ActivityID = evt.EventID, CreatedOn = DateTime.UtcNow.Ticks, ActivityType = PartialFoods.Services.InventoryServer.Entities.ActivityType.Released }; var result = repository.PutActivity(activity); return(result != null); }
/// <summary> /// 创建产品活动 /// </summary> /// <param name="productActivity"></param> /// <returns></returns> public OpResult CreateProductActivity(ProductActivity productActivity, string currentUser) { var createStatus = false; OpResult result = new OpResult() { Successed = false }; try { //添加活动主要数据 if (productActivity.Id == null) { createStatus = true; productActivity.Id = CommonRules.GUID; productActivity.CreatedBy = currentUser; productActivity.CreatedOn = DateTime.Now; productActivity.IsDeleted = 0; } else { productActivity.ModifiedBy = currentUser; productActivity.ModifiedOn = DateTime.Now; //删除原来添加的产品 var oldProdata = _context.ProductActivityDetail.Where(a => a.ProductActivityId.Equals(productActivity.Id)).ToList(); foreach (var item in oldProdata) { item.IsDeleted = 1; } var oldProPoolData = _context.ProductActivityDetailPool.Where(a => a.ProductActivityId.Equals(productActivity.Id)).ToList(); foreach (var item in oldProPoolData) { _context.ProductActivityDetailPool.Remove(item); } } //多个产品做活动 if (productActivity.ProductIds.Contains(",")) { var arrayIds = productActivity.ProductIds.Trim(',').Split(','); var arrayPIds = productActivity.ParentProductIds.Trim(',').Split(','); var arrayPrices = productActivity.ActivityProPrices.Trim(',').Split(','); var arrayOprices = productActivity.ProOrginPrice.Trim(',').Split(','); if (arrayIds.Count() != arrayPIds.Count() || arrayPIds.Count() != arrayPrices.Count() || arrayPIds.Count() != arrayOprices.Count()) { result.Message = "提交数据异常,创建数据失败!"; return(result); } for (var i = 0; i < arrayPIds.Count(); i++) { ProductActivityDetail proActivityDetail = new ProductActivityDetail(); //插入活动历史表 proActivityDetail.Id = CommonRules.GUID; proActivityDetail.ProductId = arrayPIds[i]; proActivityDetail.SubProductId = arrayIds[i]; proActivityDetail.ProductActivityId = productActivity.Id; proActivityDetail.ProductPrice = Convert.ToDecimal(arrayOprices[i]);//产品原价 proActivityDetail.ActivityPrice = Convert.ToDecimal(arrayPrices[i]); proActivityDetail.BeginValidDate = productActivity.BeginValidDate; proActivityDetail.EndValidDate = productActivity.EndValidDate; proActivityDetail.CreatedBy = currentUser; proActivityDetail.CreatedOn = DateTime.Now; proActivityDetail.IsDeleted = 0; _context.ProductActivityDetail.Add(proActivityDetail); //发布状态的话插入活动明细数据 if (productActivity.PublishStatus == 1) { //插入当前活动表 ProductActivityDetailPool proActivityDetailPool = new ProductActivityDetailPool(); proActivityDetailPool.CopyProperty(proActivityDetail); proActivityDetailPool.CreatedBy = currentUser; proActivityDetailPool.CreatedOn = DateTime.Now; proActivityDetailPool.IsDeleted = 0; proActivityDetailPool.Id = CommonRules.GUID; _context.ProductActivityDetailPool.Add(proActivityDetailPool); } } } else//单个产品做活动 { ProductActivityDetail proActivityDetail = new ProductActivityDetail(); //插入活动历史表 proActivityDetail.CopyProperty(productActivity); proActivityDetail.Id = CommonRules.GUID; proActivityDetail.ProductActivityId = productActivity.Id; proActivityDetail.ProductId = productActivity.ParentProductIds; proActivityDetail.SubProductId = productActivity.ProductIds; proActivityDetail.ProductPrice = Convert.ToDecimal(productActivity.ProOrginPrice); proActivityDetail.ActivityPrice = Convert.ToDecimal(productActivity.ActivityProPrices); proActivityDetail.CreatedOn = DateTime.Now; proActivityDetail.CreatedBy = currentUser; proActivityDetail.IsDeleted = 0; _context.ProductActivityDetail.Add(proActivityDetail); //发布状态的话插入活动明细数据 if (productActivity.PublishStatus == 1) { //插入当前活动表 ProductActivityDetailPool proActivityDetailPool = new ProductActivityDetailPool(); proActivityDetailPool.CopyProperty(productActivity); proActivityDetailPool.ProductActivityId = productActivity.Id; proActivityDetailPool.ProductId = productActivity.ParentProductIds; proActivityDetailPool.SubProductId = productActivity.ProductIds; proActivityDetailPool.ProductPrice = Convert.ToDecimal(productActivity.ProOrginPrice); proActivityDetailPool.ActivityPrice = Convert.ToDecimal(productActivity.ActivityProPrices); proActivityDetailPool.Id = CommonRules.GUID; proActivityDetailPool.CreatedOn = DateTime.Now; proActivityDetailPool.CreatedBy = currentUser; proActivityDetailPool.IsDeleted = 0; _context.ProductActivityDetailPool.Add(proActivityDetailPool); } } if (createStatus) { _context.ProductActivity.Add(productActivity); } else { var act = _context.ProductActivity.SingleOrDefault(a => a.Id.Equals(productActivity.Id)); act.ModifiedBy = currentUser; act.ModifiedOn = DateTime.Now; act.PublishStatus = productActivity.PublishStatus; } //移除过期活动 RemoveTimeoutActivity(); if (_context.SaveChanges() > 0) { result.Successed = true; } } catch (Exception e) { result.Message = "活动创建失败!"; } return(result); }
protected void Page_Load(object sender, EventArgs e) { ((CommunityMasterPage)this.Master).DisabledSidePanel = true; this.Title = Resources.CommunityResource.MainPageTitle; if (ShowEmptyScreen()) { var dashboardEmptyScreen = (DashboardEmptyScreen)Page.LoadControl(DashboardEmptyScreen.Location); AddContent.Controls.Add(dashboardEmptyScreen); return; } _widgetTabControl = new WidgetTab(new Guid("{57DAD9FA-BBB8-4a3a-B208-D3CD58691D35}"), ColumnSchemaType.Schema_25_50_25, "communityDashboard" ); var modules = new List <ASC.Web.Core.ModuleManagement.Module>(); foreach (var item in WebItemManager.Instance.GetSubItems(CommunityProduct.ID)) { if ((item is ASC.Web.Core.ModuleManagement.Module) == false) { continue; } var module = item as ASC.Web.Core.ModuleManagement.Module; modules.Add(module); foreach (var widget in module.Widgets) { try { _widgetTabControl.WidgetCollection.Add(GetWidgetControl(module, widget)); } catch (Exception ex) { //TODO: draw error control or something _widgetTabControl.WidgetCollection.Add(GetBrokenWidgetControl(ex)); } } } _widgetTabControl.WidgetCollection.Add(new Widget(BirthdayReminderWidget.WidgetID, new BirthdayReminderWidget() { ProductID = CommunityProduct.ID }, Resources.CommunityResource.BirthdayReminderWidgetName, Resources.CommunityResource.BirthdayReminderWidgetDescription) { ImageURL = WebImageSupplier.GetAbsoluteWebPath("birthday_widget.png"), SettingsProviderType = typeof(StudioWidgetSettingsProvider), UsePositionAttribute = true }); _widgetTabControl.WidgetCollection.Add(new Widget(NewEmployeeWidget.WidgetID, new NewEmployeeWidget() { ProductID = CommunityProduct.ID }, CustomNamingPeople.Substitute <Resources.CommunityResource>("NewEmployeeWidgetName"), Resources.CommunityResource.NewEmployeeWidgetDescription) { ImageURL = WebImageSupplier.GetAbsoluteWebPath("newemp_widget.png"), SettingsProviderType = typeof(StudioWidgetSettingsProvider), UsePositionAttribute = true }); var widgetSettings = SettingsManager.Instance.LoadSettingsFor <ProductActivityWidgetSettings>(SecurityContext.CurrentAccount.ID); ProductActivity productActivityControl = (ProductActivity)LoadControl(ProductActivity.Location); productActivityControl.ProductId = CommunityProduct.ID; productActivityControl.Activities = UserActivityManager.GetUserActivities( TenantProvider.CurrentTenantID, null, CommunityProduct.ID, null, UserActivityConstants.ContentActionType, null, 0, widgetSettings.CountActivities) .ConvertAll(a => new UserContentActivity(a)); _widgetTabControl.WidgetCollection.Add(new Widget(ProductActivity.WidgetID, productActivityControl, Resources.CommunityResource.CommunityActivityWidgetName, Resources.CommunityResource.CommunityActivityWidgetDescription) { ImageURL = WebImageSupplier.GetAbsoluteWebPath("lastadded_widget.png"), SettingsProviderType = typeof(StudioWidgetSettingsProvider), Position = new Point(0, 2), WidgetURL = WhatsNew.GetUrlForModule(Product.CommunityProduct.ID, null) }); WidgetsContent.Controls.Add(_widgetTabControl); NavigationPanel NavigationPanel = (NavigationPanel)this.LoadControl(NavigationPanel.Location); NavigationPanelContent.Controls.Add(NavigationPanel); if (SecurityContext.CurrentAccount.IsAuthenticated) { NavigationPanel.addButton(Resources.CommunityResource.BtnCustomizeWidgets, WebImageSupplier.GetAbsoluteWebPath("btn_managewidgets.png"), "javascript:communityDashboard.ShowSettings()", 3); if (modules.Count > 0) { NavigationPanel.addButton(Resources.CommunityResource.BtnAddContent, WebImageSupplier.GetAbsoluteWebPath("btn_addcontent.png"), "javascript:StudioManager.ShowAddContentDialog()", 2); AddContentControl AddCntnt = (AddContentControl)this.LoadControl(AddContentControl.Location); foreach (var module in modules) { try { AddCntnt.Types.Add(new AddContentControl.ContentTypes { Link = module.Context.GetCreateContentPageAbsoluteUrl(), Icon = (module as IWebItem).GetIconAbsoluteURL(), Label = module.Name }); } catch (Exception) { AddCntnt.Types.Add(new AddContentControl.ContentTypes { Link = "#", Icon = string.Empty, Label = "Error loading " + module.Name }); } } AddContent.Controls.Add(AddCntnt); } } }