Ejemplo n.º 1
0
        public virtual bool CanDelete(ISession session)
        {
            var canDelete = ClientOrder.CanDelete(session.Query <ClientOrder>()
                                                  .Where(o => o.Address == this));

            return(Disabled && canDelete);
        }
Ejemplo n.º 2
0
        public virtual bool CanDelete(ISession session)
        {
            var canDelete = ClientOrder.CanDelete(session.Query <ClientOrder>().Where(o => o.Client == this));

            return(Disabled &&
                   canDelete &&
                   Addresses.All(a => a.CanDelete(session)) &&
                   Users.All(u => u.CanDelete(session)));
        }
Ejemplo n.º 3
0
        public virtual void CheckBeforeDelete(ISession session)
        {
            if (!Disabled)
            {
                throw new EndUserException(string.Format("Пользователь {0} не отключен", Name));
            }

            var canDelete = ClientOrder.CanDelete(session.Query <ClientOrder>().Where(o => o.User == this));

            if (!canDelete)
            {
                throw new EndUserException($"Для пользователя {Name} есть заказы за интервал больше 14 дней");
            }
        }
Ejemplo n.º 4
0
        public virtual void CheckBeforeDelete(ISession session)
        {
            if (!Disabled)
            {
                throw new EndUserException(String.Format("Клиент {0} не отключен", Name));
            }

            var canDelete = ClientOrder.CanDelete(session.Query <ClientOrder>().Where(o => o.Address == this));

            if (!canDelete)
            {
                throw new EndUserException(String.Format("Для адреса доставки {0} есть заказы за интервал больше 14 дней", Name));
            }
        }
Ejemplo n.º 5
0
        public virtual void CheckBeforeDelete(ISession session)
        {
            if (!Disabled)
            {
                throw new EndUserException(String.Format("Клиент {0} не отключен", Name));
            }

            var canDelete = ClientOrder.CanDelete(session.Query <ClientOrder>().Where(o => o.Client == this));

            if (!canDelete)
            {
                throw new EndUserException(String.Format("Для клиента {0} есть заказы за интервал больше 14 дней", Name));
            }

            Addresses.Each(a => a.CheckBeforeDelete(session));
            Users.Each(u => u.CheckBeforeDelete(session));
        }