public override void Delete()
        {
            Payer.Addresses.Remove(this);
            Client.Addresses.Remove(this);
            AuditRecord.DeleteAuditRecords(this);
            PayerAuditRecord.DeleteAuditRecords(Accounting);

            base.Delete();
        }
Example #2
0
 public virtual void Delete()
 {
     Payer.Users.Remove(this);
     if (Client != null)
     {
         Client.Users.Remove(this);
     }
     AuditRecord.DeleteAuditRecords(this);
     PayerAuditRecord.DeleteAuditRecords(Accounting);
     ActiveRecordMediator.Delete(this);
 }
        public void After_password_change_message_should_be_added_to_history()
        {
            AuditRecord.DeleteAuditRecords(testClient);

            ClickLink(testClient.Users[0].Login);
            ClickLink("Изменить пароль");
            AssertText("Изменение пароля");
            Css("#emailsForSend").TypeText("*****@*****.**");
            browser.TextField(Find.ByName("reason")).TypeText("Тестовое изменение пароля");
            ClickButton("Изменить");
            AssertText("Пароль успешно изменен");

            var checkText = String.Format("$$$Пользователь {0}. Бесплатное изменение пароля: Тестовое изменение пароля", testClient.Users[0].Login);

            AssertText(checkText);
        }
Example #4
0
        public virtual void Delete(ISession session)
        {
            foreach (var user in Users.ToArray())
            {
                user.Delete();
            }

            foreach (var address in Addresses.ToArray())
            {
                address.Delete();
            }

            var payers = Payers.ToArray();

            Payers.Clear();
            foreach (var payer in payers)
            {
                //какая то фигня с загрузкой объектов
                payer.Clients.Remove(payer.Clients.First(c => c.Id == Id));
                if (payer.CanDelete(session))
                {
                    session.Delete(payer);
                }
                else
                {
                    payer.UpdatePaymentSum();
                }
            }


            var rule = Settings.SmartOrderRules;

            if (rule != null)
            {
                var overHaveSameSettins = ActiveRecordLinqBase <DrugstoreSettings> .Queryable.Any(s => s.Id != Id && s.SmartOrderRules == rule);

                if (!overHaveSameSettins)
                {
                    Settings.SmartOrderRules = null;
                    session.Delete(rule);
                }
            }
            AuditRecord.DeleteAuditRecords(this);
            session.Delete(this);
        }