public void Delete(int item) { SubscribeWord word = unitOfWork.SubscribeWords.GetById(item); unitOfWork.SubscribeWords.Delete(word); unitOfWork.Save(); }
/// <summary> /// Update subscribe word in db /// </summary> /// <param name="item">ViewModel of stopword</param> public void Update(SubscribeWordViewModel item) { SubscribeWord word = mapper.Map <SubscribeWordViewModel, SubscribeWord>(item); unitOfWork.SubscribeWords.Update(word); unitOfWork.Save(); }
/// <summary> /// check who is in the reported subscribeword /// if there is something /// look for the recipient and block the mailing in this group or start /// </summary> /// <param name="Originator">recipient PhoneNumber</param> /// <param name="Destination">company PhoneNumber</param> /// <param name="Content">message that came back</param> /// <param name="message">message.Originator/Destination/Content</param> public void SearchSubscribeWordInMessages(RecievedMessageDTO message) { SubscribeWord subscribeWord = unitOfWork.SubscribeWords.GetAll().FirstOrDefault(c => c.Word == message.MessageText); if (subscribeWord == null) { return; } Phone orignator = unitOfWork.Phones.GetAll() .FirstOrDefault(item => item.PhoneNumber == message.SenderPhone); if (orignator == null) { orignator = new Phone() { PhoneNumber = message.SenderPhone }; unitOfWork.Phones.Insert(orignator); unitOfWork.Save(); } Phone destination = unitOfWork.Phones.GetAll() .FirstOrDefault(item => item.PhoneNumber == message.RecipientPhone); if (destination == null) { return; } var companies = unitOfWork.Companies.Get(item => item.PhoneId == destination.Id); foreach (var company in companies) { var companySubscribeWords = unitOfWork.CompanySubscribeWords.Get(m => m.CompanyId == company.Id); if (companySubscribeWords.Any(n => n.SubscribeWordId == subscribeWord.Id)) { var rec = unitOfWork.Recipients.Get(r => r.CompanyId == company.Id && r.PhoneId == orignator.Id); if (!rec.Any()) { unitOfWork.Recipients.Insert(new Recipient() { CompanyId = companySubscribeWords.FirstOrDefault().CompanyId, PhoneId = orignator.Id, KeyWords = "Subscribed himself", }); } } } unitOfWork.Save(); }
protected override void Initialize() { base.Initialize(); manager = new SubscribeWordManager(mockUnitOfWork.Object, mockMapper.Object); item = new SubscribeWord() { Id = 1, Word = "Test" }; model = new SubscribeWordViewModel() { Id = 1, Word = "Test", CompanyId = 1 }; listWithItems = new List <CompanySubscribeWord>(); companySubscribeWord = new CompanySubscribeWord() { CompanyId = 1, SubscribeWord = item, SubscribeWordId = 1 }; listWithItems.Add(companySubscribeWord); TestContext.WriteLine("Overrided"); }
public void SetUp() { recievedMessageManager = new RecievedMessageManager(mockUnitOfWork.Object, mockMapper.Object); TestContext.WriteLine("Overrided"); phoneSender = new Phone() { Id = 9, PhoneNumber = "+380999999999" }; phoneRecipient = new Phone() { Id = 10, PhoneNumber = "+380111111111" }; listPhones = new List <Phone>() { phoneSender, phoneRecipient, new Phone() { Id = 7, PhoneNumber = "+380501465619" } }; testCompany = new Company() { Id = 1, PhoneId = 10, Name = "Test", ApplicationGroupId = 5 }; listCompanies = new List <Company>() { testCompany }; subscribeWord = new SubscribeWord() { Id = 21, Word = "sWord" }; listSubscribeWords = new List <SubscribeWord>() { subscribeWord, new SubscribeWord() { Id = 2, Word = "test2" } }; message = new RecievedMessage() { Id = 3, CompanyId = testCompany.Id, PhoneId = phoneRecipient.Id, Message = "test" }; viewMessage = new RecievedMessageViewModel() { SenderPhone = "+380999999999", RecipientPhone = "+380111111111", MessageText = "sWord" }; recievedMessageInsert = new RecievedMessageDTO() { SenderPhone = viewMessage.SenderPhone, RecipientPhone = viewMessage.RecipientPhone, MessageText = "test1" }; recievedMessageDto = new RecievedMessageDTO() { SenderPhone = viewMessage.SenderPhone, RecipientPhone = viewMessage.RecipientPhone, MessageText = viewMessage.MessageText }; stopWord = new StopWord() { Id = 1, Word = "sWord" }; listStopWords = new List <StopWord>() { stopWord, new StopWord() { Id = 2, Word = "START" } }; }
public bool CreateWithRecipient(ManageViewModel item, List <RecipientViewModel> recipientList) { try { Company company = mapper.Map <ManageViewModel, Company>(item); Phone phone = unitOfWork.Phones.Get(filter: e => e.PhoneNumber == item.PhoneNumber).FirstOrDefault(); if (phone == null) { phone = new Phone(); phone.PhoneNumber = item.PhoneNumber; unitOfWork.Phones.Insert(phone); company.Phone = phone; } else { company.PhoneId = phone.Id; } if (company.TariffId == 0) { company.TariffId = null; } unitOfWork.Companies.Insert(company); notificationsGenerator.SupplyWithCampaignNotifications(company); unitOfWork.Save(); SubscribeWord subWord = unitOfWork.SubscribeWords.Get(sw => sw.Word == "start").FirstOrDefault(); if (subWord != null) { unitOfWork.CompanySubscribeWords.Insert(new CompanySubscribeWord() { Company = company, SubscribeWord = subWord }); } foreach (var recipient in recipientList) { Recipient newRecepient = mapper.Map <RecipientViewModel, Recipient>(recipient); newRecepient.CompanyId = company.Id; phone = unitOfWork.Phones.Get(filter: e => e.PhoneNumber == recipient.Phonenumber).FirstOrDefault(); if (phone == null) { phone = new Phone(); phone.PhoneNumber = recipient.Phonenumber; unitOfWork.Phones.Insert(phone); newRecepient.Phone = phone; } else { newRecepient.PhoneId = phone.Id; } unitOfWork.Recipients.Insert(newRecepient); unitOfWork.Save(); } return(true); } catch (Exception) { return(false); } }