예제 #1
0
        public void BillingNotificationTest()
        {
            payer.Comment = "";
            var paymentOptions = new PaymentOptions {
                WorkForFree = true, Comment = "Независимая копия"
            };

            payer.AddComment(paymentOptions.GetCommentForPayer());

            mailer.NotifyBillingAboutClientRegistration(client);
            mailer.Send();

            Assert.That(message, Is.Not.Null, "Сообщение не послано");
            Assert.That(message.To.ToString(), Is.EqualTo("*****@*****.**"));

            Assert.That(message.From.ToString(), Is.EqualTo("*****@*****.**"));

            Assert.That(message.Subject, Is.EqualTo("Регистрация нового клиента"));
            Assert.That(message.Body, Is.EqualTo(
                            @"Зарегистрирован новый клиент
<br>
Название: <a href=""https://stat.analit.net/adm/Payers/10"">Тестовый плательщик</a>
<br>
Код: 58
<br>
Биллинг код: 10
<br>
Кем зарегистрирован: test
<br>
Клиент обслуживается бесплатно
"));
            Assert.That(message.IsBodyHtml, Is.True);
        }
예제 #2
0
        public virtual void AddBillingComment(string billingMessage)
        {
            if (String.IsNullOrEmpty(billingMessage))
            {
                return;
            }

            new AuditRecord("Сообщение в биллинг: " + billingMessage, this).Save();
            billingMessage = String.Format("О регистрации Адреса {0} для клиента {1} ( {2} ): {3}", Name, Client.Name, Client.Id, billingMessage);
            Payer.AddComment(billingMessage);
        }
예제 #3
0
        public virtual void AddBillingComment(string billingMessage)
        {
            if (String.IsNullOrEmpty(billingMessage))
            {
                return;
            }

            new AuditRecord("Сообщение в биллинг: " + billingMessage, this).Save();
            var user = Users.First();

            billingMessage = String.Format("О регистрации поставщика: {0} ( {1} ), пользователь: {2} ( {3} ): {4}", Id, Name, user.Id, user.Name, billingMessage);
            Payer.AddComment(billingMessage);
        }
예제 #4
0
        public virtual void AddBillingComment(string billingMessage)
        {
            if (String.IsNullOrEmpty(billingMessage))
            {
                return;
            }

            new AuditRecord("Сообщение в биллинг: " + billingMessage, this).Save();

            var objName = Client != null ? "клиента" : "поставщика";

            billingMessage = String.Format("О регистрации Пользователя {0} ( {1} ) для {5} {2} ( {3} ): {4}", Name, Id, RootService.Name, RootService.Id, billingMessage, objName);
            Payer.AddComment(billingMessage);
        }
        public void Registered(
            [ARDataBind("Instance", AutoLoadBehavior.NewRootInstanceIfInvalidKey)] Payer payer,
            [DataBind("PaymentOptions")] PaymentOptions paymentOptions,
            bool showRegistrationCard,
            string passwordId)
        {
            if (payer.Id == 0)
            {
                payer.Init(Admin);
            }

            payer.AddComment(paymentOptions.GetCommentForPayer());

            if (payer.Orgs.Count == 0)
            {
                payer.Orgs.Add(new LegalEntity(payer));
            }
            else
            {
                var org = payer.Orgs.First();
                org.Name     = payer.Name;
                org.FullName = payer.JuridicalName;
            }

            if (string.IsNullOrEmpty(payer.Customer))
            {
                payer.Customer = payer.JuridicalName;
            }

            DbSession.SaveOrUpdate(payer);

            var supplier = payer.Suppliers.FirstOrDefault();
            var client   = payer.Clients.FirstOrDefault();

            if (client != null)
            {
                Mail().NotifyBillingAboutClientRegistration(client);
            }
            else
            {
                Mail().PayerRegistred(payer);
            }

            if (showRegistrationCard && client != null && client.Users.Count > 0)
            {
                Redirect("main", "report", new {
                    id = client.Users.First().Id,
                    passwordId
                });
            }
            else if (client != null)
            {
                RedirectTo(client);
            }
            else if (supplier != null)
            {
                RedirectTo(supplier);
            }
            else
            {
                RedirectTo(payer);
            }
        }