public async Task <bool> UpdateStatus(int id, CampaignAccountContentStatus status, string username) { var CampaignAccountContent = await _CampaignAccountContentRepository.GetByIdAsync(id); if (CampaignAccountContent == null) { return(false); } ; var campaignaccount = await _campaignAccountRepository.GetByIdAsync(CampaignAccountContent.CampaignAccountId); if (campaignaccount == null) { return(false); } ; CampaignAccountContent.Status = status; CampaignAccountContent.UserModified = username; CampaignAccountContent.DateModified = DateTime.Now; await _CampaignAccountContentRepository.UpdateAsync(CampaignAccountContent); if (status == CampaignAccountContentStatus.DaDuyet) { campaignaccount.RefContent = CampaignAccountContent.Content; campaignaccount.UserModified = username; campaignaccount.DateModified = DateTime.Now; campaignaccount.IsApprovedContent = true; await _campaignAccountRepository.UpdateAsync(campaignaccount); } var notifType = status == CampaignAccountContentStatus.DaDuyet ? NotificationType.AgencyApproveCampaignContent : NotificationType.AgencyDeclineCampaignContent; var campaign = await _campaignRepository.GetByIdAsync(campaignaccount.CampaignId); await _notificationRepository.AddAsync(new Notification() { Type = notifType, DataId = campaignaccount.CampaignId, Data = string.Empty, DateCreated = DateTime.Now, EntityType = EntityType.Account, EntityId = campaignaccount.AccountId, Message = notifType.GetMessageText(username, campaign.Title.ToString()), Status = NotificationStatus.Created }); return(true); }
public CampaignAccountContentByCampaignIdSpecification(int campaignid, CampaignAccountContentStatus status) : base(i => i.CampaignAccount.CampaignId == campaignid && i.Status == status) { AddInclude(m => m.CampaignAccount); }
public CampaignAccountContentByCampaignAccountIdSpecification(int campaignAccountId, CampaignAccountContentStatus status) : base(i => i.CampaignAccountId == campaignAccountId && i.Status == status) { }