public ActionResult ChangeStatus(Campaign.CampaignStatusEnum newStatus, int campaignId)
        {
            Campaign campaign = _db.Campaigns.First(x => x.CampaignId == campaignId);

            campaign.CampaignStatus = newStatus;
            campaign.UpdateDate     = DateTime.Now;
            if (newStatus == Campaign.CampaignStatusEnum.Completed)
            {
                if (campaign.CampaignType == Campaign.CampaignTypeEnum.EmailBases)
                {
                    var    contact  = _db.Contacts.FirstOrDefault(co => co.OrganizationId == campaign.RelatedCompanyId && co.ContactType == Contact.ContactTypeEnum.EmailBase);
                    string filepath = Path.Combine(App.ImportPathGlobal + @"AcquireEmail\" + campaign.RelatedCompanyId + @"\EmailBaseForImport.xlsx");

                    _acquireEmailMethodHelpers.SaveAcquireEmailResults(campaign.CampaignId, filepath.Replace("EmailBaseForImport.xlsx", "EmailBaseFinal.xlsx"));

                    var emailBase = new Attachment(filepath.Replace("EmailBaseForImport.xlsx", "EmailBaseFinal.xlsx"));

                    _helper.SendEmailBaseEmail("*****@*****.**", contact.Email, AppDomain.CurrentDomain.BaseDirectory + "Content/mail_files/automatic_emailBaseFinal.html",
                                               "https://crm.moj-eracun.hr/HelpDesk/AcquireEmail/VerifyReceiving?caid=" + campaign.CampaignId + "&coid=" + contact.ContactId + "&iid=2", emailBase);

                    campaign.CampaignAttributes += "; Baza je dostavljena klijentu (" + DateTime.Now.ToShortDateString() + ")";
                    campaign.UpdateDate          = DateTime.Now;
                    _db.SaveChanges();
                }

                campaign.CampaignEndDate = DateTime.Now;
            }
            _db.SaveChanges();
            return(Redirect(Request.UrlReferrer?.ToString()));
        }
Пример #2
0
        public ActionResult ChangeStatus(Campaign.CampaignStatusEnum newStatus, int campaignId)
        {
            Campaign campaign = _db.Campaigns.First(x => x.CampaignId == campaignId);

            campaign.CampaignStatus = newStatus;
            campaign.UpdateDate     = DateTime.Now;
            if (newStatus == Campaign.CampaignStatusEnum.Completed)
            {
                campaign.CampaignEndDate = DateTime.Now;
            }
            _db.SaveChanges();
            return(Redirect(Request.UrlReferrer?.ToString()));
        }
Пример #3
0
        public IQueryable <CampaignStatusHelper> GetEmailBasesEntityStats(Campaign.CampaignStatusEnum campaignStatus)
        {
            var entites = _db.AcquireEmails.Where(x => x.Campaign.CampaignStatus == campaignStatus).GroupBy(x => x.AcquireEmailEntityStatus);
            var model   = new List <CampaignStatusHelper>();

            foreach (var entity in entites)
            {
                string status;
                switch (entity.Key)
                {
                case AcquireEmail.AcquireEmailEntityStatusEnum.Created:
                    status = "Kreirano";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.AcquiredInformation:
                    status = "Prikupljena povratna informacija";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.NoAnswer:
                    status = "Nema odgovora / Ne javlja se";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.ClosedOrganization:
                    status = "Zatvorena tvrtka";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.OldPartner:
                    status = "Ne poslujus s korisnikom";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.PartnerWillContactUser:
                    status = "Partner će se javiti korisniku samostalno";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.WrittenConfirmationRequired:
                    status = "Potrebno poslati pisanu suglasnost";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.WrongTelephoneNumber:
                    status = "Neispravan kontakt broj";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.PoslovnaHrvatska:
                    status = "Kontakt u bazi";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.NoTelehoneNumber:
                    status = "Ne postoji ispravan kontakt broj";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.Bankruptcy:
                    status = "Subjekt u stečaju / likvidaciji";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.NoFinancialAccount:
                    status = "Subjekt nema žiro račun";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.ToBeClosed:
                    status = "Najava brisanja subjekta";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.Post:
                    status = "Žele primati račune poštom";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.Foreign:
                    status = "Inozemna tvrtka";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.OnHold:
                    status = "Tvrtka u mirovanju";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.PostChecked:
                    status = "Pošta provjereno";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.NoAnswerOldPost:
                    status = "Ne javlja se, PSP";
                    break;

                case AcquireEmail.AcquireEmailEntityStatusEnum.AcquiredInformationNoEmail:
                    status = "Prikupljena povratna informacija, ne žele obavijest";
                    break;

                default:
                    status = "Status unosa";
                    break;
                }
                var temp = new CampaignStatusHelper()
                {
                    StatusName    = status,
                    SumOfEntities = entity.Count()
                };
                model.Add(temp);
            }
            return(model.AsQueryable());
        }