public void PostGetPropertyValues(Connection connection, IEnumerable <IEntity> entities, PropertyDefinitionDictionary propDefs, PropertyValues resultValues, PropertyValueSettings settings) { }
public void PreGetPropertyValues(Connection connection, IEnumerable <IEntity> entities, PropertyDefinitionDictionary propDefs, PropertyValues resultValues, PropertyValueSettings settings) { if (_propInsts == null) { return; } foreach (var entity in entities) { var propInstOrderFileId = _propInsts.FirstOrDefault(p => p.Val != null && p.Val.ToString() == entity.EntityIterationId.ToString() && p.PropDefId == _propDefIdOrderFileId); if (propInstOrderFileId != null) { var propInstOrderNumber = _propInsts.FirstOrDefault(p => p.EntityId == propInstOrderFileId.EntityId && p.PropDefId == _propDefIdOrderNumber); if (propInstOrderNumber != null) { resultValues.SetValue(new PropertyValue(entity, _orderPropertyDefinition, propInstOrderNumber.Val)); } } } }
private void btnSync_Click(object sender, EventArgs e) { CleanAllFilesdb(); var rootFolder = m_connection.FolderManager.RootFolder; string[] pathes = { rootFolder.FolderPath }; //m_connection.FileManager. var foldersIds = m_connection.WebServiceManager.DocumentService.GetFolderIdsByParentIds(new long[] { 1 }, true); var files = new List <File>(); foreach (var folderid in foldersIds) { var folderfiles = m_connection.WebServiceManager.DocumentService.GetLatestFilesByFolderId(folderid, false); if (folderfiles != null) { files.AddRange(folderfiles); } } PropertyService propertyService = m_connection.WebServiceManager.PropertyService; var allProperties = m_connection.PropertyManager.GetPropertyDefinitions(null, null, PropertyDefinitionFilter.IncludeUserDefined); string propertySystemName = string.Empty; foreach (var property in allProperties) { if (property.Value.DisplayName == "Document Number") { propertySystemName = property.Value.SystemName; } } //var propertySystemName = "60821119-9640-4590-883a-024912c0393b"; var propDef = m_connection.PropertyManager.GetPropertyDefinitionBySystemName(propertySystemName); foreach (var file in files) { var fileIteration = new FileIteration(m_connection, file); var path0 = m_connection.WorkingFoldersManager.GetPathOfFileInWorkingFolder(fileIteration).ToString(); string path1 = "$" + path0.Substring(path0.IndexOf("Vault") + 5); var path = path1.Replace('\\', '/'); var pvs = new PropertyValueSettings(); var DocumentNumberValue = m_connection.PropertyManager.GetPropertyValue(fileIteration, propDef, pvs); var filedb = new DataLayer.Models.File() { FullPath = path, CreatorId = file.CreateUserId, CreationDate = file.CreateDate, EditorId = file.CheckedOut ? file.CkOutUserId : file.CreateUserId, LastRevisionDate = file.CheckedOut ? file.ModDate : file.CreateDate, LastRevisionID = file.Id, LastComment = file.Comm, LastState = DataLayer.Models.FileStates.a, DocumentNumber = DocumentNumberValue != null?DocumentNumberValue.ToString() : "", }; var createPersonDb = new DataLayer.Models.Person() { PersonID = file.CreateUserId, Name = file.CreateUserName }; if (db.PersonRipository.GetById(createPersonDb.PersonID) == null) { db.PersonRipository.Insert(createPersonDb); db.PersonRipository.save(); } //To Modify later //var EditPersonDb = new DataLayer.Models.Person() //{ // PersonID = file.CkOutUserId, // Name = file.cus //}; db.FileRipository.Insert(filedb); db.FileRipository.save(); } reloadGrid(); }