package com.vci.web.service; import com.vci.corba.common.PLException; import com.vci.corba.omd.vrm.VersionRule; import com.vci.dto.OsRevisionRuleDTO; import com.vci.pagemodel.OsRevisionRuleVO; import com.vci.starter.web.pagemodel.BaseResult; import java.io.File; import java.util.Collection; import java.util.List; import java.util.Map; /** * 版本规则服务 * @author weidy * @date 2021-2-15 */ public interface OsRevisionRuleServiceI extends OsBaseServiceI{ /** * 查询所有的版本规则 * @return 版本对象 */ List selectAllRevision(); /** * 查询所有的版本规则映射 * @return key 是版本的英文名称 */ Map selectAllRevisionMap(); /** * 创建版本规则 * @param osRevisionRuleDTO * @return */ boolean addVersionRule(OsRevisionRuleDTO osRevisionRuleDTO) throws PLException; /** * 修改版本规则 * @param osRevisionRuleDTO * @return */ boolean updateVersionRule(OsRevisionRuleDTO osRevisionRuleDTO) throws PLException; /** * 删除版本规则 * @param osRevisionRuleDTOS * @return */ boolean deleteVersionRule(List osRevisionRuleDTOS) throws PLException; /** * 数据对象转换为显示对象 * @param versionRules 数据对象 * @return 显示对象 */ List revisionRuleDO2VOs(Collection versionRules); /** * 数据对象转换为显示对象 * @param versionRule 数据对象 * @return 显示对象 */ OsRevisionRuleVO revisionRuleDO2VO(VersionRule versionRule); /** * 使用编号获取规则的值 * @param id 编号 * @return 显示对象 */ OsRevisionRuleVO getRevisionRuleById(String id); /** * 使用多个编号获取规则的值 * @param vrIdList 编号 * @return 显示对象 */ List getRevisionRuleByIds(Collection vrIdList); /** * 查询应用范围 * @param vrName 版本规则英文名称 * @return */ List> getUsedVersionRuleList(String vrName) throws PLException; /** * 导出选中的版本规则 * @param exportFileName 导出的文件名 * @param vrNames 需要导出的版本规则名称 * @param flag 控制导出的列名是否和导入模板一致 * @return */ String exportVersionRule(String exportFileName,String vrNames,boolean flag/*控制导出的列名是否和导入模板一致*/) throws PLException; /** * 下载版本规则导入模板 * @param exportFileName * @return * @throws PLException */ String downloadVersionRuleTemplate(String exportFileName) throws Exception; /** * 导入版本规则 * @param file * @return */ BaseResult importVersionRules(File file) throws Exception; }