123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162 |
- using AIPlatform.Protocol.Entities;
- using System.Collections.Generic;
- using System.Threading.Tasks;
- namespace aipsvr.Services.DatabaseManagers
- {
- interface IImageCategoryDataManager : IDatabaseManager
- {
- /// <summary>
- /// Create a image category
- /// </summary>
- /// <param name="ImageCategory">The ImageCategory to create</param>
- /// <returns></returns>
- Task CreateImageCategoryAsync(ImageCategory ImageCategory);
- /// <summary>
- /// Update the image category in system.
- /// </summary>
- /// <param name="imageCategory">The ImageCategory to update.</param>
- /// <returns></returns>
- Task UpdateImageCategoryAsync(ImageCategory imageCategory);
- /// <summary>
- /// Update the image category hasChildren in system.
- /// </summary>
- /// <returns></returns>
- Task UpdateImageCategoryHasChildrenAsync(long id, bool hasChildren);
- /// <summary>
- /// Update the image category developers in system.
- /// </summary>
- /// <returns></returns>
- Task UpdateImageCategoryDevelopersAsync(long id, List<EntityBase> developers);
- /// <summary>
- /// Update the image category labelers in system.
- /// </summary>
- /// <returns></returns>
- Task UpdateImageCategoryLabelersAsync(long id, List<EntityBase> labelers);
- /// <summary>
- /// Update the image category sharers in system.
- /// </summary>
- /// <returns></returns>
- Task UpdateImageCategorySharersAsync(long id, List<EntityBase> sharers);
- /// <summary>
- /// Update the image category gatherers in system.
- /// </summary>
- /// <returns></returns>
- Task UpdateImageCategoryGatherersAsync(long id, List<EntityBase> gatherers);
- /// <summary>
- /// Delete an image category from the system.
- /// </summary>
- /// <param name="ImageCategoryId">The id of the ImageCategory</param>
- /// <returns></returns>
- Task DeleteImageCategoryAsync(long ImageCategoryId);
- /// <summary>
- /// Delete an image category by LabelPackageId.
- /// </summary>
- /// <param name="labelPackageContentId">The id of the labelPackageContent</param>
- /// <returns></returns>
- Task DeleteImageCategoryByLabelPackageIdAsync(long labelPackageContentId);
- /// <summary>
- /// Get the image categories count by keyword.
- /// </summary>
- /// <param name="keyword">The key word.</param>
- /// <returns></returns>
- Task<long> GetImageCategoriesCountAsync(string keyword, bool isRoot, List<long> organizationIds);
- /// <summary>
- /// Get the image categories count by developer.
- /// </summary>
- /// <param name="developer">The developer.</param>
- /// <returns></returns>
- Task<long> GetImageCategoryCountByDeveloperAsync(EntityBase developer);
- /// <summary>
- /// Get the image category By id.
- /// </summary>
- /// <returns>The searched image category.</returns>
- Task<ImageCategory> GetImageCategoryAsync(long id);
- /// <summary>
- /// Get the image category By name.
- /// </summary>
- /// <param name="parentId">The parent id.</param>
- /// <param name="name">The image category name.</param>
- /// <returns>The searched image category.</returns>
- Task<ImageCategory> GetImageCategoryAsync(long parentId, string name);
- /// <summary>
- /// Get the image case By same batch label case id
- /// </summary>
- /// <returns>The searched image category.</returns>
- Task<ImageCategory> GetImageCaseBySameBatchLabelCaseIdAsync(long sameBatchLabelCaseId);
- /// <summary>
- /// Get all image categories
- /// </summary>
- /// <returns>The loaded ImageCategories</returns>
- Task<List<ImageCategory>> GetImageCategoriesAsync();
- /// <summary>
- /// Get the image categories by key word.
- /// </summary>
- /// <returns>The loaded ImageCategories</returns>
- Task<List<ImageCategory>> GetImageCategoriesAsync(string keyword, int pageIndex, int pageSize, bool isRoot, List<long> organizationIds);
- /// <summary>
- /// Get the image categories by key word.
- /// </summary>
- /// <param name="keyword">The key word.</param>
- /// <returns>The loaded ImageCategories</returns>
- Task<List<ImageCategory>> GetImageCategoriesByKeywordAsync(string keyword);
- /// <summary>
- /// Get the image categories by parent id.
- /// </summary>
- /// <param name="parentId">The parent id.</param>
- /// <returns>The loaded ImageCategories</returns>
- Task<List<ImageCategory>> GetImageCategoriesByParentIdAsync(long parentId);
- /// <summary>
- /// Get the image categories by parent id in order.
- /// </summary>
- /// <param name="parentId">The parent id.</param>
- /// <returns>The loaded ImageCategories</returns>
- Task<List<ImageCategory>> GetImageCategoriesByParentIdInOrderAsync(long parentId);
- /// <summary>
- /// Get the image categories by parent id.
- /// </summary>
- /// <param name="parentId">The parent id.</param>
- /// <returns>The loaded ImageCategories</returns>
- Task<List<ImageCategory>> GetImageCategoriesByParentIdAsync(long parentId, EntityBase developer);
- /// <summary>
- /// Get the image categories by organization id.
- /// </summary>
- /// <param name="organizationId">The organization id.</param>
- /// <returns>The loaded ImageCategories</returns>
- Task<List<ImageCategory>> GetImageCategoriesByOrganizationIdAsync(long organizationId);
- /// <summary>
- /// Get the image categories by level.
- /// </summary>
- /// <param name="level">The category level.</param>
- /// <returns>The loaded ImageCategories</returns>
- Task<List<ImageCategory>> GetImageCategoriesByLevelAsync(CategoryLevel level);
- /// <summary>
- /// Get the image categories by labelPackageId.
- /// </summary>
- /// <param name="labelPackageContentId">The label package content id.</param>
- /// <returns>The loaded ImageCategories</returns>
- Task<List<ImageCategory>> GetImageCategoriesHasChildrenAsync(long labelPackageContentId);
- }
- }
|