public void MarkAsResolved(Guid itemId) { SupportRequestOnStatusChanged ev = this.SetRequestStatus(itemId, ItemStatus.Resolved); IEventManager eventManager = IoC.Container.Resolve <IEventManager>(); eventManager.Publish(ev); }
private SupportRequestOnStatusChanged SetRequestStatus(Guid itemId, ItemStatus status) { SupportRequestOnStatusChanged ev; this.ValidateSetRequestStatus(itemId); using (IUnitOfWork uow = new UnitOfWork(RepositoryType.MSSQL)) { IRequestRepository repo = IoC.Container.Resolve <IRequestRepository>(uow); Request request = repo.GetById(itemId.ToString()); ev = new SupportRequestOnStatusChanged(request.Id, request.Subject, request.Status, status, request.Email); request.Status = status; repo.Update(request); uow.Commit(); } return(ev); }
public SupportRequestOnStatusChangedMailContent(SupportRequestOnStatusChanged ev) : base() { this.Subject = ResourceHelper.ToResourceKey(ev.Subject, ResourceType.Text); this.Body = ResourceHelper.ToResourceKey("support\\supportRequestOnStatusChanged.html", ResourceType.MailTemplate); this.To = ev.RequestorEmail; }