package com.vci.ubcs.code.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.vci.ubcs.code.dto.CodeClassifyTemplateAttrDTO; import com.vci.ubcs.code.entity.CodeClassifyTemplateAttr; import com.vci.ubcs.code.vo.CodeOsbtmtypeattributeVO; import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO; import com.vci.ubcs.starter.exception.VciBaseException; import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject; import com.vci.ubcs.starter.web.pagemodel.DataGrid; import com.vci.ubcs.starter.web.pagemodel.PageHelper; import org.springblade.core.tool.api.R; import java.util.Collection; import java.util.List; import java.util.Map; /** * 主题库分类的模板属性服务接口 * * @author ludc * @date 2023/5/5 */ public interface ICodeClassifyTemplateAttrService extends IService { /** * 查询所有的主题库分类的模板属性 * @param mpjLambdaWrapper 查询条件 * @param pageHelper 分页和排序 * @return 执行结果 * @throws VciBaseException 查询条件和分页出错的时候会抛出异常 */ IPage gridCodeClassifyTemplateAttr(MPJLambdaWrapper mpjLambdaWrapper , PageHelper pageHelper) throws VciBaseException; /** * 数据对象转换为显示对象 * @param codeClassifyTemplateAttrDO 数据对象 * @return 显示对象 * @throws VciBaseException 拷贝属性出错的时候会抛出异常 */ CodeClassifyTemplateAttrVO codeClassifyTemplateAttrDO2VO(CodeClassifyTemplateAttr codeClassifyTemplateAttrDO) throws VciBaseException; /** * 自定义分页 * * @param page * @param CodeClstempattr * @return */ IPage selectCodeClstempattrPage(IPage page, CodeClassifyTemplateAttrVO CodeClstempattr); /** * 使用模板的主键获取模板的属性--批量 * @param templateOidCollection 模板的主键 * @return 属性的信息 */ List listCodeClassifyTemplateAttrByTemplateOids(Collection templateOidCollection); /** * 批量数据对象转换为显示对象 * @param codeClassifyTemplateAttrDOs 数据对象列表 * @return 显示对象 */ List codeClassifyTemplateAttrDO2VOs(Collection codeClassifyTemplateAttrDOs); // /** // * 数据对象转换为显示对象 // * @param codeClassifyTemplateAttrDO 数据对象 // * @return 显示对象 // */ // CodeClassifyTemplateAttrVO codeClassifyTemplateAttrDO2VO(CodeClassifyTemplateAttr codeClassifyTemplateAttrDO); /** * 查询所有的主题库分类的模板属性 * @param conditionMap 查询条件 * @param pageHelper 分页和排序 * @return 执行结果 */ DataGrid gridCodeClassifyTemplateAttr(Map conditionMap, PageHelper pageHelper); /** * 增加主题库分类的模板属性 * @param codeClassifyTemplateAttrDTO 主题库分类的模板属性数据传输对象 * @return 执行结果 */ CodeClassifyTemplateAttrVO addSave(CodeClassifyTemplateAttrDTO codeClassifyTemplateAttrDTO); List batchAddSave(List list); /** * 修改主题库分类的模板属性 * @param codeClassifyTemplateAttrDTO 主题库分类的模板属性数据传输对象 * @return 执行结果 */ R editSave(CodeClassifyTemplateAttrDTO codeClassifyTemplateAttrDTO); /** * 删除主题库分类的模板属性 * @param codeClassifyTemplateAttrDTO 主题库分类的模板属性数据传输对象,oid和ts需要传输 * @return 删除结果反馈::success:成功,fail:失败 */ R deleteCodeClassifyTemplateAttr(CodeClassifyTemplateAttrDTO codeClassifyTemplateAttrDTO); /** * 主键获取主题库分类的模板属性 * @param oid 主键 * @return 主题库分类的模板属性显示对象 */ CodeClassifyTemplateAttrVO getObjectByOid(String oid); /** * 主键批量获取主题库分类的模板属性 * @param oidCollections 主键集合,但是受性能影响,建议一次查询不超过10000个 * @return 主题库分类的模板属性显示对象 */ Collection listCodeClassifyTemplateAttrByOids(Collection oidCollections); /** * 参照主题库分类的模板属性列表 * @param conditionMap 查询条件 * @param pageHelper 分页和排序 * @return 主题库分类的模板属性显示对象列表,生效的内容 */ DataGrid refDataGridCodeClassifyTemplateAttr(Map conditionMap, PageHelper pageHelper); /** * 查询这个模板,业务类型下的所有未选择的属性 * @param baseQueryObject * @return */ DataGrid codeClassifyTemplateAttrByBtm(BaseQueryObject baseQueryObject); /** * 查询这个模板,业务类型下已选择的属性 * @param baseQueryObject * @return */ DataGrid codeClassifyTemplateAttrByBtmHave(BaseQueryObject baseQueryObject); /** * 同步到其他模板 * @param codeClassifyAttrDTO oid * @return */ R copyto(CodeClassifyTemplateAttrDTO codeClassifyAttrDTO); }