package com.vci.starter.revision.service;
|
|
import com.vci.starter.revision.model.*;
|
|
/**
|
* 版本处理所需要的sql操作。因为要查询数据库,所以放到dataBase这个starter中
|
* @author weidy
|
* @date 2020/4/15
|
*/
|
public interface VciRevisionServiceI {
|
|
/**
|
* 获取最后一个版本的信息
|
* @param nameOid 对象主键
|
* @param tableName 数据库表格
|
* @return 最后一个版本信息,它不一定是发布的版本
|
*/
|
RevisionInfo selectLastRevision(String nameOid,String tableName);
|
|
/**
|
* 获取最后一个版次的信息
|
* @param nameOid 对象的主键
|
* @param revisionOid 版本的主键
|
* @param tableName 数据库表格
|
* @return
|
*/
|
RevisionInfo selectLastVersion(String nameOid, String revisionOid,String tableName);
|
|
/**
|
* 获取已发布的版本的数据值
|
* @param nameOid 对象的主键
|
* @param btmName 业务类型的名称
|
* @param tableName 数据库表格
|
* @return 版本信息
|
*/
|
RevisionInfo selectRelease(String nameOid, String btmName, String tableName);
|
|
/**
|
* 添加发布的数据,如果存在则更新,如果不存在则插入
|
* @param releasedObj 发布版本的数据
|
* @return 受影响的行数
|
*/
|
int saveReleased(ReleasedObjDO releasedObj);
|
|
/**
|
* 把最后一个版本重置isLastR
|
* @param nameOid 对象的主键
|
* @param tableName 表格名称
|
* @return 受影响的行数
|
*/
|
int resetLastRevision(String nameOid,String tableName);
|
|
/**
|
* 重置老版本的isLastR
|
* @param oid 老版本的主键
|
* @param tableName 表格名称
|
* @return 受影响的行数
|
*/
|
int resetOldRevision(String oid,String tableName);
|
|
/**
|
* 通过老版本的主键来获取版本信息
|
* @param copyFromVersion 新版本使用的老版本的主键
|
* @param tableName 表格名称
|
* @return 版本信息
|
*/
|
RevisionInfo selectByOid(String copyFromVersion,String tableName);
|
|
/**
|
* 重置以前的最新版次
|
* @param nameOid 对象的主键
|
* @param revisionOid 版本的主键
|
* @param tableName 表格名称
|
* @return 受影响的行数
|
*/
|
int resetLastVersion(String nameOid, String revisionOid,String tableName);
|
|
/**
|
* 重置老版次(它不一定是最新的)
|
* @param oid 老版次的主键
|
* @param tableName 表格名称
|
* @return 受影响的行数
|
*/
|
int resetOldVersion(String oid,String tableName);
|
|
/**
|
* 查询属性等于某个值的数据条数,常用于判断数据是否重复
|
* @param key 属性的名称
|
* @param value 属性的值
|
* @param tableName 表格的名称
|
* @return 个数
|
*/
|
int countByProperties(String key,Object value,String tableName);
|
|
/**
|
* 查询属性等于某个值并且不是某个主键的数据条数,常用于修改数据时判断数据是否重复
|
* @param key 属性的名称
|
* @param value 属性的值
|
* @param tableName 表格的名称
|
* @param oid 主键
|
* @return 数据个数
|
*/
|
int countByPropertiesNotIncludeSelf(String key,Object value,String tableName,String oid);
|
}
|