package com.vci.ubcs.code.service; import com.vci.ubcs.code.model.CodeKeyAttrRepeatRuleDO; 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.ubcs.code.bo.CodeClassifyFullInfoBO; import com.vci.ubcs.code.dto.CodeKeyAttrRepeatRuleDTO; import com.vci.ubcs.code.vo.pagemodel.CodeKeyAttrRepeatRuleVO; import java.util.Collection; import java.util.List; import java.util.Map; /** * 关键数据查重规则服务接口 * * @author weidy * @date 2022-01-24 */ public interface CodeKeyAttrRepeatRuleServiceI { /** * 查询所有的关键数据查重规则 * @param conditionMap 查询条件 * @param pageHelper 分页和排序 * @return 执行结果 * @throws VciBaseException 查询条件和分页出错的时候会抛出异常 */ DataGrid gridCodeKeyAttrRepeatRule(Map conditionMap, PageHelper pageHelper) throws VciBaseException; /** * 批量数据对象转换为显示对象 * @param codeKeyAttrRepeatRuleDOs 数据对象列表 * @return 显示对象 * @throws VciBaseException 参数为空或者不存在的时候会抛出异常 */ List codeKeyAttrRepeatRuleDO2VOs(Collection codeKeyAttrRepeatRuleDOs) throws VciBaseException; /** * 数据对象转换为显示对象 * @param codeKeyAttrRepeatRuleDO 数据对象 * @return 显示对象 * @throws VciBaseException 拷贝属性出错的时候会抛出异常 */ CodeKeyAttrRepeatRuleVO codeKeyAttrRepeatRuleDO2VO(CodeKeyAttrRepeatRuleDO codeKeyAttrRepeatRuleDO) throws VciBaseException; /** * 增加关键数据查重规则 * @param codeKeyAttrRepeatRuleDTO 关键数据查重规则数据传输对象 * @return 执行结果 * @throws VciBaseException 参数为空,唯一项,必输项不通过时会抛出异常 */ CodeKeyAttrRepeatRuleVO addSave(CodeKeyAttrRepeatRuleDTO codeKeyAttrRepeatRuleDTO) throws VciBaseException; /** * 修改关键数据查重规则 * @param codeKeyAttrRepeatRuleDTO 关键数据查重规则数据传输对象 * @return 执行结果 * @throws VciBaseException 参数为空,唯一项,必输项不通过时会抛出异常 */ CodeKeyAttrRepeatRuleVO editSave(CodeKeyAttrRepeatRuleDTO codeKeyAttrRepeatRuleDTO) throws VciBaseException; /** * 删除关键数据查重规则 * @param codeKeyAttrRepeatRuleDTO 关键数据查重规则数据传输对象,oid和ts需要传输 * @return 删除结果反馈::success:成功,fail:失败 * @throws VciBaseException 参数为空,被引用时抛出异常 */ BaseResult deleteCodeKeyAttrRepeatRule(CodeKeyAttrRepeatRuleDTO codeKeyAttrRepeatRuleDTO) throws VciBaseException; /** * 主键获取关键数据查重规则 * @param oid 主键 * @return 关键数据查重规则显示对象 * @throws VciBaseException 参数为空,数据不存在时会抛出异常 */ CodeKeyAttrRepeatRuleVO getObjectByOid(String oid) throws VciBaseException; /** * 主键批量获取关键数据查重规则 * @param oidCollections 主键集合,但是受性能影响,建议一次查询不超过10000个 * @return 关键数据查重规则显示对象 * @throws VciBaseException 查询出现异常时会抛出 */ Collection listCodeKeyAttrRepeatRuleByOids(Collection oidCollections) throws VciBaseException; /** * 编号批量获取关键数据查重规则 * @param idCollections 编号集合 * @return 关键数据查重规则显示对象 */ Collection listCodeKeyAttrRepeatRuleByIds(List idCollections); /** * 参照关键数据查重规则列表 * @param conditionMap 查询条件 * @param pageHelper 分页和排序 * @return 关键数据查重规则显示对象列表,生效的内容 * @throws VciBaseException 查询条件和分页出错的时候会抛出异常 */ DataGrid refDataGridCodeKeyAttrRepeatRule(Map conditionMap, PageHelper pageHelper) throws VciBaseException; /** * 使用分类的全部信息来获取关键属性判断规则的内容 * @param classifyFullInfo 主题库分类的全部信息 * @return 规则的显示对象 */ CodeKeyAttrRepeatRuleVO getRuleByClassifyFullInfo(CodeClassifyFullInfoBO classifyFullInfo); }