yuxc
2023-04-11 5ce77f5db9439fb12dde261363c3cbaf4fdebb1e
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java
@@ -1,9 +1,15 @@
package com.vci.ubcs.code.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.code.entity.CodeClassify;
import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO;
import com.vci.ubcs.code.vo.pagemodel.TreeQueryObject;
import com.vci.ubcs.com.vci.starter.web.pagemodel.Tree;
import org.springblade.core.tool.api.R;
import java.util.Collection;
import java.util.List;
/**
@@ -21,5 +27,122 @@
    */
   List<CodeClassify> selectByWrapper(Wrapper wrapper);
   /**
    * 自定义分页
    *
    * @param page
    * @param plCodeClassify
    * @return
    */
   IPage<CodeClassifyVO> selectPlCodeClassifyPage(IPage<CodeClassifyVO> page, CodeClassifyVO plCodeClassify);
   /**
    * 增加主题库分类
    * @param codeClassifyEntity 主题库分类数据传输对象
    * @return 执行结果
    */
   R addSave(CodeClassify codeClassifyEntity)  ;
   /**
    * 修改主题库分类
    * @param codeClassifyEntity 主题库分类数据传输对象
    * @return 执行结果
    */
   R editSave(CodeClassify codeClassifyEntity) ;
   /**
    * 检查 主题库分类是否删除
    * @param codeClassify 主题库分类数据传输对象,必须要有oid和ts属性
    * @return 执行结果
    */
   R checkIsCanDelete(CodeClassify codeClassify);
   /**
    * 检查是否有下级是否关联了数据
    *
    * @param oid 主键
    * @return true 表示有引用,false表示没有引用
    */
   boolean checkChildIsLinked(String oid) ;
   /**
    * 校验是否有下级节点,不校验是否关联了数据
    *
    * @param oid 主键
    * @return true表示有下级,false表示没有下级
    */
   boolean checkHasChild(String oid) ;
   /**
    * 删除主题库分类
    * @param codeClassify 主题库分类数据传输对象,oid和ts需要传输
    * @return 删除结果反馈::success:成功,fail:失败
    */
   R deleteCodeClassify(CodeClassify codeClassify) ;
   /**
    * 启用、停用
    * @param oid 主键
    * @param lcStatus 状态
    * @return 执行结果
    */
    R updateLcStatus(String oid, String lcStatus);
    /**
    * 根据主键批量查询对象
    * @param oids 对象主键,使用逗号分隔,但是不能超过1000
    * @return 业务对象
    */
//   List<CodeClassify> selectByPrimaryKeyCollection(Collection<String> oids);
   /**
    * 主键批量获取主题库分类
    * @param oidCollections 主键集合,但是受性能影响,建议一次查询不超过10000个
    * @return 主题库分类显示对象
    */
   Collection<CodeClassifyVO> listCodeClassifyByOids(Collection<String> oidCollections) ;
   /**
    * 批量数据对象转换为显示对象
    * @param codeClassifys 数据对象列表
    * @return 显示对象
    */
   List<CodeClassifyVO> codeClassifyDO2VOs(Collection<CodeClassify>  codeClassifys);
   /**
    * 数据对象转换为显示对象
    * @param  codeClassify 数据对象
    * @return 显示对象
    */
   CodeClassifyVO codeClassifyDO2VO(CodeClassify codeClassify);
   /**
    * 参照树 主题库分类
    * @param treeQueryObject 树形查询对象
    * @return 主题库分类显示树
    */
   List<Tree> referTree(TreeQueryObject treeQueryObject);
   /**
    * 查询主题库分类 树
    * @param treeQueryObject 树查询对象
    * @return 主题库分类 显示树
    */
   List<Tree> treeCodeClassify(TreeQueryObject treeQueryObject);
   /**
    * 导出分类
    * @param oid 分类主键
    * @return excel文件路径
    */
   String exportClassify(String oid);
   /**
    * 获取子级的主题库分类
    *
    * @param codeClassifyOid 分类的主键
    * @param allLevel        是否所有的层级
    * @param fieldInPath 在路径中的字段
    * @param enable 是否只显示启用
    * @return 分类的显示对象
    */
   List<CodeClassifyVO> listChildrenClassify(String codeClassifyOid, boolean allLevel, String fieldInPath, boolean enable);
}