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.entity.LinkType;
|
import com.vci.ubcs.omd.vo.LinkTypeAttributeVO;
|
import com.vci.ubcs.omd.vo.LinkTypeVO;
|
import com.vci.ubcs.starter.exception.VciBaseException;
|
import com.vci.ubcs.starter.web.pagemodel.PageHelper;
|
|
import java.util.Collection;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.Set;
|
|
/**
|
* Description: 链接类型的服务接口
|
*
|
* @author LiHang
|
* @date 2023/5/24
|
*/
|
public interface ILinkTypeService extends IService<LinkType> {
|
|
/**
|
* 获取链接类型列表
|
* @param conditionMap 查询条件
|
* @param pageHelper 分页信息和排序信息,默认使用id排序
|
* @return 链接类型对象列表
|
* @throws VciBaseException 查询出错时会抛出异常
|
*/
|
IPage<LinkTypeVO> listLinkType(Map<String,String> conditionMap, PageHelper pageHelper) throws VciBaseException;
|
|
/**
|
* 根据主键获取链接类型
|
* @param pkLinkType 链接类型主键
|
* @return 链接类型,如果不存在会返回null
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
LinkTypeVO getLinkTypeByOid(String pkLinkType) throws VciBaseException;
|
|
/**
|
* 根据主键批量获取链接类型
|
* @param pkLinkTypes 链接类型主键,用逗号分隔
|
* @return 链接类型列表,如果有不存在的不会返回,全部不存在的则返回空列表
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
List<LinkTypeVO> listLinkTypeByOids(String pkLinkTypes) throws VciBaseException;
|
|
/**
|
* 批量根据主键获取链接类型
|
* @param pkLinkTypeCollection 链接类型主键集合
|
* @return 链接类型列表,如果有不存在的不会返回,全部不存在的则返回空列表
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
List<LinkTypeVO> listLinkTypeByOidCollection(Collection<String> pkLinkTypeCollection) throws VciBaseException;
|
|
/**
|
* 根据英文名称获取链接类型
|
* @param id 英文名称
|
* @return 链接类型,如果不存在会返回null
|
* @throws VciBaseException
|
*/
|
LinkTypeVO getLinkTypeById(String id) throws VciBaseException;
|
|
/**
|
* 根据英文名称批量获取链接类型
|
* @param ids 英文名称,使用逗号分隔
|
* @return 链接类型列表,如果有不存在的不会返回,全部不存在的则返回空列表
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
List<LinkTypeVO> listLinkTypeByIds(String ids) throws VciBaseException;
|
|
/**
|
* 根据英文名称集合批量获取链接类型
|
* @param linkTypeIdCollection 英文名称集合,使用逗号分隔
|
* @return 链接类型列表,如果有不存在的不会返回,全部不存在的则返回空列表
|
* @throws VciBaseException 参数为空或者查询出错时会抛出错误
|
*/
|
List<LinkTypeVO> listLinkTypeByIdCollection(Collection<String> linkTypeIdCollection) throws VciBaseException;
|
|
/**
|
* 获取链接类型的指定属性
|
* @param id 链接类型的英文名称
|
* @param attributeIdCollection 属性的集合,如果为空则获取全部
|
* @return 属性的显示对象
|
*/
|
List<LinkTypeAttributeVO> listAttributeVOByIdsForLink(String id, Collection<String> attributeIdCollection);
|
|
/**
|
* 根据链接类型主键获取中文名称
|
* @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 linkTypeVO 链接类型显示对象(和DTO共用)
|
* @return 添加后的链接类型
|
* @throws VciBaseException 添加出错的时候会抛出异常
|
*/
|
LinkTypeVO addSave(LinkTypeVO linkTypeVO) throws VciBaseException;
|
|
/**
|
* 添加链接类型
|
* @param linkTypeVO 链接类型显示对象(和DTO共用)
|
* @param autoCreateTable 自动创建表格
|
* @return 添加后的链接类型
|
* @throws VciBaseException 添加出错的时候会抛出异常
|
*/
|
LinkTypeVO addSave(LinkTypeVO linkTypeVO,boolean autoCreateTable) throws VciBaseException;
|
|
/**
|
* 修改链接类型
|
* @param linkTypeVO 链接类型显示对象(和DTO共用)
|
* @return 修改后的链接类型
|
* @throws VciBaseException 修改出错的时候会抛出异常
|
*/
|
LinkTypeVO editSave(LinkTypeVO linkTypeVO) throws VciBaseException;
|
|
/**
|
* 修改链接类型
|
* @param linkTypeVO 链接类型显示对象(和DTO共用)
|
* @param autoCreateTable 自动创建表格
|
* @return 修改后的链接类型
|
* @throws VciBaseException 修改出错的时候会抛出异常
|
*/
|
LinkTypeVO editSave(LinkTypeVO linkTypeVO,boolean autoCreateTable) throws VciBaseException;
|
|
/**
|
* 删除链接类型
|
* @param linkTypeVO 链接类型显示对象
|
* @throws VciBaseException 如果链接类型被引用,或者删除出错时会抛出异常
|
*/
|
void delete(LinkTypeVO linkTypeVO) throws VciBaseException;
|
|
/**
|
* 批量删除链接类型
|
* @param linkTypeVOList 要删除的链接类型显示对象列表
|
* @throws VciBaseException 如果链接类型被引用,或者删除出错时会抛出异常
|
*/
|
void batchDelete(List<LinkTypeVO> linkTypeVOList) throws VciBaseException;
|
|
|
/**
|
* 为链接类型添加属性对象
|
* @param attributeVO 属性显示对象
|
* @param tableName 表名
|
* @throws VciBaseException 参数为空或者查询出错的时候会抛出异常
|
*/
|
void addSaveAttribute(LinkTypeAttributeVO attributeVO,String tableName,String serviceName) throws VciBaseException;
|
|
/**
|
* 为链接类型添加属性对象
|
* @param attributeVO 属性显示对象
|
* @param tableName 表名
|
* @param autoAdd2Table 是否自动添加到表格中
|
* @throws VciBaseException 参数为空或者查询出错的时候会抛出异常
|
*/
|
void addSaveAttribute(LinkTypeAttributeVO attributeVO,String tableName,boolean autoAdd2Table,String serviceName) throws VciBaseException;
|
|
/**
|
* 检查某个主键的链接类型是否存在
|
* @param pkLinkType 链接类型主键
|
* @return true表示存在,false表示不存在
|
* @throws VciBaseException 查询出错或者参数为空的时候抛出异常
|
*/
|
boolean checkLinkTypeExist(String pkLinkType) throws VciBaseException;
|
|
/**
|
* 为链接类型修改属性对象
|
* @param attributeVO 属性显示对象
|
* @throws VciBaseException 参数为空或者查询出错的时候会抛出异常
|
*/
|
void editSaveAttribute(LinkTypeAttributeVO attributeVO,String tableName,String domain) throws VciBaseException;
|
|
/**
|
* 为链接类型修改属性对象
|
* @param attributeVO 属性显示对象
|
* @param autoEdit2Table 是否自动修改到表格
|
* @throws VciBaseException 参数为空或者查询出错的时候会抛出异常
|
*/
|
void editSaveAttribute(LinkTypeAttributeVO attributeVO,String tableName,String domain,boolean autoEdit2Table) throws VciBaseException;
|
|
/**
|
* 获取链接类型的数据库表名称
|
* @param id 链接类型的英文名称
|
* @param domain 领域值
|
* @return 数据库表名称
|
*/
|
String getTableName(String id,String domain) ;
|
|
/**
|
* 获取所有使用的业务类型的英文名称,转换为小写
|
* @return 英文名称英文小写
|
*/
|
Set<String> listUsedBtmType();
|
}
|