/// <summary>
 /// 更新物品类型信息
 /// </summary>
 /// <param name="dtos">包含更新信息的物品类型信息DTO信息</param>
 /// <returns>业务操作结果</returns>
 public virtual Task <OperationResult> UpdateArticleTypes(params ArticleTypeInputDto[] dtos)
 {
     Check.Validate <ArticleTypeInputDto, int>(dtos, nameof(dtos));
     return(ArticleTypeRepository.UpdateAsync(dtos));
 }
 /// <summary>
 /// 删除物品类型信息
 /// </summary>
 /// <param name="ids">要删除的物品类型信息编号</param>
 /// <returns>业务操作结果</returns>
 public virtual Task <OperationResult> DeleteArticleTypes(params int[] ids)
 {
     Check.NotNull(ids, nameof(ids));
     return(ArticleTypeRepository.DeleteAsync(ids));
 }
 /// <summary>
 /// 检查物品类型信息是否存在
 /// </summary>
 /// <param name="predicate">检查谓语表达式</param>
 /// <param name="id">更新的物品类型信息编号</param>
 /// <returns>物品类型信息是否存在</returns>
 public virtual Task <bool> CheckArticleTypeExists(Expression <Func <ArticleType, bool> > predicate, int id = default(int))
 {
     return(ArticleTypeRepository.CheckExistsAsync(predicate, id));
 }