package org.springblade.code.service; import com.vci.mdm.dto.CodeClassifyTemplateButtonDTO; import com.vci.mdm.model.CodeClassifyTemplateButtonDO; import com.vci.mdm.pagemodel.CodeClassifyTemplateButtonVO; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.BaseResult; import com.vci.starter.web.pagemodel.DataGrid; import com.vci.starter.web.pagemodel.PageHelper; import com.vci.web.pageModel.BatchCBO; import java.util.Collection; import java.util.List; import java.util.Map; /** * 主题库里模板包含的按钮服务接口 * * @author weidy * @date 2022-01-24 */ public interface CodeClassifyTemplateButtonServiceI { /** * 查询所有的主题库里模板包含的按钮 * @param conditionMap 查询条件 * @param pageHelper 分页和排序 * @return 执行结果 * @throws VciBaseException 查询条件和分页出错的时候会抛出异常 */ DataGrid gridCodeClassifyTemplateButton(Map conditionMap, PageHelper pageHelper) throws VciBaseException; /** * 批量数据对象转换为显示对象 * @param codeClassifyTemplateButtonDOs 数据对象列表 * @return 显示对象 * @throws VciBaseException 参数为空或者不存在的时候会抛出异常 */ List codeClassifyTemplateButtonDO2VOs(Collection codeClassifyTemplateButtonDOs) throws VciBaseException; /** * 批量数据对象转换为显示对象 * @param codeClassifyTemplateButtonDOs 数据对象列表 * @param hasButtonVO 是否包含按钮的信息 * @return 显示对象 * @throws VciBaseException 参数为空或者不存在的时候会抛出异常 */ List codeClassifyTemplateButtonDO2VOs(Collection codeClassifyTemplateButtonDOs, boolean hasButtonVO) throws VciBaseException; /** * 数据对象转换为显示对象 * @param codeClassifyTemplateButtonDO 数据对象 * @return 显示对象 * @throws VciBaseException 拷贝属性出错的时候会抛出异常 */ CodeClassifyTemplateButtonVO codeClassifyTemplateButtonDO2VO(CodeClassifyTemplateButtonDO codeClassifyTemplateButtonDO) throws VciBaseException; /** * 增加主题库里模板包含的按钮 * @param codeClassifyTemplateButtonDTO 主题库里模板包含的按钮数据传输对象 * @return 执行结果 * @throws VciBaseException 参数为空,唯一项,必输项不通过时会抛出异常 */ CodeClassifyTemplateButtonVO addSave(CodeClassifyTemplateButtonDTO codeClassifyTemplateButtonDTO) throws VciBaseException; /** * 修改主题库里模板包含的按钮 * @param codeClassifyTemplateButtonDTO 主题库里模板包含的按钮数据传输对象 * @return 执行结果 * @throws VciBaseException 参数为空,唯一项,必输项不通过时会抛出异常 */ CodeClassifyTemplateButtonVO editSave(CodeClassifyTemplateButtonDTO codeClassifyTemplateButtonDTO) throws VciBaseException; /** * 删除主题库里模板包含的按钮 * @param codeClassifyTemplateButtonDTO 主题库里模板包含的按钮数据传输对象,oid和ts需要传输 * @return 删除结果反馈::success:成功,fail:失败 * @throws VciBaseException 参数为空,被引用时抛出异常 */ BaseResult deleteCodeClassifyTemplateButton(CodeClassifyTemplateButtonDTO codeClassifyTemplateButtonDTO) throws VciBaseException; /** * 主键获取主题库里模板包含的按钮 * @param oid 主键 * @return 主题库里模板包含的按钮显示对象 * @throws VciBaseException 参数为空,数据不存在时会抛出异常 */ CodeClassifyTemplateButtonVO getObjectByOid(String oid) throws VciBaseException; /** * 主键批量获取主题库里模板包含的按钮 * @param oidCollections 主键集合,但是受性能影响,建议一次查询不超过10000个 * @return 主题库里模板包含的按钮显示对象 * @throws VciBaseException 查询出现异常时会抛出 */ Collection listCodeClassifyTemplateButtonByOids(Collection oidCollections) throws VciBaseException; /** * 参照主题库里模板包含的按钮列表 * @param conditionMap 查询条件 * @param pageHelper 分页和排序 * @return 主题库里模板包含的按钮显示对象列表,生效的内容 * @throws VciBaseException 查询条件和分页出错的时候会抛出异常 */ DataGrid refDataGridCodeClassifyTemplateButton(Map conditionMap, PageHelper pageHelper) throws VciBaseException; /** * 模板删除的时候触发 * @param classifyTemplateOid 模板的主键 * @return 受影响的数据 */ BatchCBO codeTemplateDeleteTrigger(String classifyTemplateOid); /** * 使用模板主键获取扩展的按钮 * @param templateOid 模板的主键 * @return 按钮的相关的信息 */ List listButtonByTemplateOid(String templateOid); /** * 使用模板主键获取扩展的按钮 * @param templateOid 模板的主键 * @param hasButtonVO 是否包含按钮的显示信息 * @return 按钮的相关的信息 */ List listButtonByTemplateOid(String templateOid,boolean hasButtonVO); }