Exemplo n.º 1
0
        public override void Deleting(Sungero.Domain.DeletingEventArgs e)
        {
            var systemSubstitutions = Substitutions.GetAll().Where(s => s.IsSystem == true && (s.Substitute.Equals(_obj) || s.User.Equals(_obj))).ToList();

            foreach (var substitution in systemSubstitutions)
            {
                Substitutions.Delete(substitution);
            }
        }
Exemplo n.º 2
0
        public override void Deleting(Sungero.Domain.DeletingEventArgs e)
        {
            var ruleItems = DocumentGrantRightsQueueItems.GetAll(q => Equals(q.AccessRightsRule, _obj)).ToList();

            foreach (var item in ruleItems)
            {
                DocumentGrantRightsQueueItems.Delete(item);
            }
        }
Exemplo n.º 3
0
        public override void Deleting(Sungero.Domain.DeletingEventArgs e)
        {
            var managers = Departments.GetAll()
                           .Where(d => d.BusinessUnit.Equals(_obj) && d.HeadOffice == null)
                           .Select(d => d.Manager)
                           .Where(m => m != null)
                           .ToList();

            // Удаление замещений руководителя.
            if (_obj.CEO != null)
            {
                Sungero.Company.Functions.Module.DeleteSystemSubstitutions(managers, _obj.CEO);
            }
        }
Exemplo n.º 4
0
        public override void Deleting(Sungero.Domain.DeletingEventArgs e)
        {
            base.Deleting(e);

            if (!Docflow.OfficialDocuments.GetAll().Any(d => Equals(d.Project, _obj)))
            {
                // Папки.
                var folder = _obj.Folder;
                Folders.Delete(folder);

                foreach (var line in _obj.Classifier)
                {
                    folder = line.Folder;
                    Folders.Delete(folder);
                }
            }
        }
Exemplo n.º 5
0
        public override void Deleting(Sungero.Domain.DeletingEventArgs e)
        {
            var document = _obj.DocumentGroup.OfficialDocuments.FirstOrDefault();

            if (document == null || Locks.GetLockInfo(document).IsLocked)
            {
                return;
            }

            // Удалить записи о выдаче документа (иначе не даст удалить из-за зависимостей).
            var tracking = document.Tracking.Where(r => Equals(r.ReturnTask, _obj)).ToList();

            foreach (var row in tracking)
            {
                row.ReturnTask = null;
            }

            document.Save();
        }
Exemplo n.º 6
0
        public override void Deleting(Sungero.Domain.DeletingEventArgs e)
        {
            if (_obj.Manager == null)
            {
                return;
            }

            if (_obj.RecipientLinks.Any())
            {
                var members = _obj.RecipientLinks.Select(r => r.Member).ToList().Select(m => Users.As(m)).Where(m => m != null).ToList();
                Functions.Module.DeleteSystemSubstitutions(members, _obj.Manager);
            }

            if (_obj.HeadOffice != null && _obj.HeadOffice.Manager != null)
            {
                Functions.Module.DeleteSystemSubstitutions(new[] { _obj.Manager }, _obj.HeadOffice.Manager);
            }

            if (_obj.HeadOffice == null && _obj.BusinessUnit != null && _obj.BusinessUnit.CEO != null)
            {
                Functions.Module.DeleteSystemSubstitutions(new[] { _obj.Manager }, _obj.BusinessUnit.CEO);
            }
            Functions.Department.SynchronizeManagerInRole(_obj);
        }
Exemplo n.º 7
0
 public override void Deleting(Sungero.Domain.DeletingEventArgs e)
 {
     base.Deleting(e);
 }