示例#1
0
 public override void AfterSave(Sungero.Domain.AfterSaveEventArgs e)
 {
     if (_obj.GrantRightsOnExistingDocuments == true && _obj.Status == Status.Active)
     {
         PublicFunctions.Module.CreateGrantAccessRightsToDocumentsByRuleAsyncHandler(_obj.Id);
     }
 }
示例#2
0
 public override void AfterSave(Sungero.Domain.AfterSaveEventArgs e)
 {
     base.AfterSave(e);
     if (!e.Params.Contains(Constants.BoxBase.JobRunned))
     {
         Jobs.SyncBoxes.Enqueue();
     }
 }
 public override void AfterSave(Sungero.Domain.AfterSaveEventArgs e)
 {
     // Попытка починить сохранение группы регистрации при параллельной работе.
     lock (RegistrationGroups.Info)
     {
         Functions.RegistrationGroup.GrantRegistrationRights(_obj);
     }
 }
示例#4
0
        public override void AfterSave(Sungero.Domain.AfterSaveEventArgs e)
        {
            base.AfterSave(e);

            if (!e.Params.Contains(Sungero.Projects.Constants.Module.DontUpdateModified) && e.Params.Contains(Docflow.PublicConstants.OfficialDocument.GrantAccessRightsToProjectDocument))
            {
                Sungero.Projects.Jobs.GrantAccessRightsToProjectDocuments.Enqueue();
                e.Params.Remove(Docflow.PublicConstants.OfficialDocument.GrantAccessRightsToProjectDocument);
            }

            if (!e.Params.Contains(Sungero.Projects.Constants.Module.DontUpdateModified))
            {
                Sungero.Projects.Jobs.GrantAccessRightsToProjectFolders.Enqueue();
            }
        }
示例#5
0
        public override void AfterSave(Sungero.Domain.AfterSaveEventArgs e)
        {
            #region Создание контактов, пришедших с сервиса заполнения по ОГРН/ИНН

            var foundContacts            = string.Empty;
            var companyContacts          = Contacts.GetAll(contact => Equals(_obj, contact.Company));
            var hasActiveCompanyContacts = companyContacts.Any(contact => contact.Status == Contact.Status.Active);
            var hasContactsFromService   = e.Params.TryGetValue(Constants.CompanyBase.FindedContactsInServiceParamName, out foundContacts) &&
                                           !string.IsNullOrWhiteSpace(foundContacts);

            if (!hasActiveCompanyContacts && hasContactsFromService && Contacts.AccessRights.CanCreate())
            {
                var contacts = foundContacts.Split(';');
                foreach (var contact in contacts)
                {
                    var contactInfo    = contact.Split('|');
                    var name           = contactInfo[0];
                    var jobTitle       = contactInfo.Length > 1 ? contactInfo[1] : string.Empty;
                    var phone          = contactInfo.Length > 2 ? contactInfo[2] : string.Empty;
                    var isContactExist = companyContacts.Any(cont => cont.Name.ToLower() == name.ToLower());

                    if (string.IsNullOrWhiteSpace(name) || isContactExist)
                    {
                        continue;
                    }

                    var companyContact = Contacts.Create();
                    companyContact.Name     = name;
                    companyContact.JobTitle = jobTitle;
                    companyContact.Phone    = phone;
                }
            }
            e.Params.Remove(Constants.CompanyBase.FindedContactsInServiceParamName);

            #endregion

            base.AfterSave(e);
        }
示例#6
0
        public override void AfterSave(Sungero.Domain.AfterSaveEventArgs e)
        {
            base.AfterSave(e);

            Sungero.Company.PublicFunctions.Employee.CreateUpdateEmployeeNameAsyncHandler(_obj.Id);
        }