using CloudBuilder.Core.Service; using CloudBuilder.Master.Data; using CloudBuilder.Master.Entity; using CloudBuilder.Master.SearchCriteria; namespace CloudBuilder.Master.Service { public interface IFamilyTreeService : IServiceBase { FamilyTreeData FindAllByTreeId(string treeId); FamilyTreeData FindByCurrentPerson(string key, string personId); FamilyTreeResultData FindBySearchCriteria(FamilyTreeSearchCriteria tc); dynamic PrintBySearchCriteria(FamilyTreeSearchCriteria tc); void Deletes(string[] keys); void RequestFamilyTreePermission(string treeId, string currentPermission); void ApproveFamilyTreePermission(string treeId, string currentPersonId, string userName, string managerIndc); void RejectFamilyTreePermission(string treeId, string currentPersonId, string userName); FamilyTreeData BindSelfPerson(string treeId, string personId); FamilyTreeData UnbindSelfPerson(string treeId); // 族谱全系/小系 .fm 导入导出(D1-D8):Export 出明文数据由前端加密,Save/List/Read 走交换目录 string GetExchangeFactor(); FamilyTreeExchangeData ExportFamilyTree(string treeId, string scope, string anchorPersonId); string SaveExchangeFile(string fileName, string contentBase64); FamilyTreeExchangeFileInfo[] ListExchangeFiles(string treeId); string ReadExchangeFile(string fileName); int ImportFamilyTree(string targetTreeId, FamilyTreeExchangeData data); int ImportSubTree(string targetTreeId, string anchorPersonId, FamilyTreeExchangeData data); FamilyTreeExchangeFileInfo[] ListBackups(string treeId); int RestoreBackup(string targetTreeId, string backupFileName); } }