package com.vci.ubcs.omd.service;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.vci.ubcs.omd.dto.RevisionRuleDTO;
|
import com.vci.ubcs.omd.entity.RevisionRule;
|
import com.vci.ubcs.omd.vo.BtmTypeVO;
|
import com.vci.ubcs.omd.vo.RevisionRuleVO;
|
import com.vci.ubcs.starter.exception.VciBaseException;
|
import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
|
import org.springblade.core.mp.support.Query;
|
|
import java.util.Collection;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* Description: 版本规则服务定义
|
*
|
* @author LiHang
|
* @date 2023/5/17
|
*/
|
public interface IRevisionRuleService extends IService<RevisionRule> {
|
/**
|
* 获取版本规则列表
|
* @param condition 查询条件
|
* @param query 分页信息和排序信息,默认使用id排序
|
* @return 版本规则对象列表
|
* @throws VciBaseException 查询出错时会抛出异常
|
*/
|
IPage<RevisionRuleVO> listRevisionRule(Map<String, String> condition, Query query) throws VciBaseException;
|
|
/**
|
* 根据主键获取版本规则
|
* @param pkRevisionRule 版本规则主键
|
* @return 版本规则,如果不存在会返回null
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
RevisionRuleVO getRevisionRuleByOid(String pkRevisionRule) throws VciBaseException;
|
|
/**
|
* 根据主键批量获取版本规则
|
* @param pkRevisionRules 版本规则主键,用逗号分隔
|
* @return 版本规则列表,如果有不存在的不会返回,全部不存在的则返回空列表
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
List<RevisionRuleVO> listRevisionRuleByOids(String pkRevisionRules) throws VciBaseException;
|
|
/**
|
* 批量根据主键获取版本规则
|
* @param pkRevisionRuleCollection 版本规则主键集合
|
* @return 版本规则列表,如果有不存在的不会返回,全部不存在的则返回空列表
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
List<RevisionRuleVO> listRevisionRuleByOidCollection(Collection<String> pkRevisionRuleCollection) throws VciBaseException;
|
|
/**
|
* 根据英文名称获取版本规则
|
* @param id 英文名称
|
* @return 版本规则,如果不存在会返回null
|
* @throws VciBaseException
|
*/
|
RevisionRuleVO getRevisionRuleById(String id) throws VciBaseException;
|
|
/**
|
* 根据英文名称批量获取版本规则
|
* @param ids 英文名称,使用逗号分隔
|
* @return 版本规则列表,如果有不存在的不会返回,全部不存在的则返回空列表
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
List<RevisionRuleVO> listRevisionRuleByIds(String ids) throws VciBaseException;
|
|
/**
|
* 根据英文名称集合批量获取版本规则
|
* @param revisionRuleIdCollection 英文名称集合,使用逗号分隔
|
* @return 版本规则列表,如果有不存在的不会返回,全部不存在的则返回空列表
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
List<RevisionRuleVO> listRevisionRuleByIdCollection(Collection<String> revisionRuleIdCollection) throws VciBaseException;
|
|
/**
|
* 根据版本规则主键获取中文名称
|
* @param oid 版本规则主键,多个使用逗号分隔
|
* @return 中文名称,如果不存在会返回null;多个会以逗号分隔
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
String getNameByOid(String oid) throws VciBaseException;
|
|
/**
|
* 根据版本规则英文名称获取中文名称
|
* @param id 版本规则英文名称
|
* @return 中文名称,如果不存在会返回null;多个会以逗号分隔
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
String getNameById(String id) throws VciBaseException;
|
/**
|
* 添加版本规则
|
* @param revisionRuleDTO 版本规则显示对象(和DTO共用)
|
* @return 添加后的版本规则
|
* @throws VciBaseException 添加出错的时候会抛出异常
|
*/
|
RevisionRuleVO addSave(RevisionRuleDTO revisionRuleDTO) throws VciBaseException;
|
|
/**
|
* 批量添加版本规则
|
* @param revisionRuleDTOList 版本规则显示对象列表(和DTO共用)
|
* @return 批量添加后的版本规则
|
* @throws VciBaseException 添加出错的时候会抛出异常
|
*/
|
List<RevisionRuleVO> batchAddSave(List<RevisionRuleDTO> revisionRuleDTOList) throws VciBaseException;
|
|
|
/**
|
* 修改版本规则
|
* @param revisionRuleDTO 版本规则显示对象(和DTO共用)
|
* @return 修改后的版本规则
|
* @throws VciBaseException 修改出错的时候会抛出异常
|
*/
|
RevisionRuleVO editSave(RevisionRuleDTO revisionRuleDTO) throws VciBaseException;
|
|
/**
|
* 批量修改版本规则
|
* @param revisionRuleDTOList 版本规则显示对象列表(和DTO共用)
|
* @return 批量修改后的版本规则
|
* @throws VciBaseException 修改出错的时候会抛出异常
|
*/
|
List<RevisionRuleVO> batchEditSave(List<RevisionRuleDTO> revisionRuleDTOList) throws VciBaseException;
|
|
/**
|
* 删除版本规则
|
* @param revisionRuleVO 版本规则显示对象
|
* @throws VciBaseException 如果版本规则被引用,或者删除出错时会抛出异常
|
*/
|
void delete(RevisionRuleVO revisionRuleVO) throws VciBaseException;
|
|
/**
|
* 批量删除版本规则
|
* @param revisionRuleVOList 要删除的版本规则显示对象列表
|
* @throws VciBaseException 如果版本规则被引用,或者删除出错时会抛出异常
|
*/
|
void batchDelete(List<RevisionRuleVO> revisionRuleVOList) throws VciBaseException;
|
|
/**
|
* 批量校验版本规则是否被使用
|
* @param oidCollection 主键集合
|
* @return true表示被引用
|
*/
|
boolean batchCheckRevisionRuleUsed(Collection<String> oidCollection);
|
|
/**
|
* 获取使用版本规则的业务类型
|
* @param pkRevisionRule 版本规则的主键
|
* @return 引用的业务类型
|
* @throws VciBaseException 查询出错时会抛出异常
|
*/
|
List<BtmTypeVO> listRevisionRuleUsedInfo(String pkRevisionRule) throws VciBaseException;
|
|
/**
|
* 校验版本规则是否被引用
|
* @param pkRevisionRule 版本规则的主键
|
* @return true表示被引用, false表示没有被引用
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
boolean checkRevisionRuleUsed(String pkRevisionRule) throws VciBaseException;
|
|
/**
|
* 判断版本规则是否存在
|
* @param revisionRuleId 版本规则的英文名称
|
* @return true表示都存在,false表示不存在
|
* @throws VciBaseException 参数错误或者查询出错会抛出异常
|
*/
|
boolean checkRevisionRuleExist(String revisionRuleId) throws VciBaseException;
|
|
/**
|
* 获取下一个版本的值
|
* @param ruleId 版本的规则
|
* @param currentRevisionValue 当前版本的值,为空的时候,说明是新增
|
* @return 下一个版本号
|
* @throws VciBaseException 版本规则不存在的时候会抛出异常
|
*/
|
String getNextRevisionValue(String ruleId, String currentRevisionValue) throws VciBaseException;
|
|
/**
|
* 分页查询
|
* @param query 分页
|
* @param condition 查询条件
|
* @return 查询结果
|
* @throws VciBaseException 查询出错时抛出异常
|
*/
|
IPage<RevisionRuleVO> pageQueryVO(Map<String, Object> condition, Query query) throws VciBaseException;
|
|
/**
|
* 查看应用范围
|
* @param id id
|
* @return 执行结果
|
*/
|
List<BtmTypeVO> getApplyRange(String id);
|
}
|