public CampaignAccountCaptionByCampaignIdSpecification(int campaignId, CampaignAccountCaptionStatus status) : base(i => i.CampaignAccount.CampaignId == campaignId && i.Status == status) { AddInclude(m => m.CampaignAccount); }
public async Task <bool> UpdateStatus(int id, CampaignAccountCaptionStatus status, string username) { var CampaignAccountCaption = await _CampaignAccountCaptionRepository.GetByIdAsync(id); if (CampaignAccountCaption == null) { return(false); } ; var campaignaccount = await _campaignAccountRepository.GetByIdAsync(CampaignAccountCaption.CampaignAccountId); if (campaignaccount == null) { return(false); } ; CampaignAccountCaption.Status = status; CampaignAccountCaption.UserModified = username; CampaignAccountCaption.DateModified = DateTime.Now; await _CampaignAccountCaptionRepository.UpdateAsync(CampaignAccountCaption); if (status == CampaignAccountCaptionStatus.DaDuyet) { campaignaccount.RefContent = CampaignAccountCaption.Content; campaignaccount.UserModified = username; campaignaccount.DateModified = DateTime.Now; campaignaccount.Status = CampaignAccountStatus.ApprovedContent; campaignaccount.IsApprovedContent = true; await _campaignAccountRepository.UpdateAsync(campaignaccount); } else if (status == CampaignAccountCaptionStatus.KhongDuyet) { campaignaccount.UserModified = username; campaignaccount.DateModified = DateTime.Now; campaignaccount.Status = CampaignAccountStatus.Canceled; await _campaignAccountRepository.UpdateAsync(campaignaccount); } var notifType = status == CampaignAccountCaptionStatus.DaDuyet ? NotificationType.AgencyApproveCampaignCaption : NotificationType.AgencyDeclineCampaignCaption; 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 CampaignAccountCaptionByCampaignAccountIdSpecification(int campaignAccountId, CampaignAccountCaptionStatus status) : base(i => i.CampaignAccountId == campaignAccountId && i.Status == status) { }