package ${basePackage}.module.${table.moduleName}.service.${table.businessName};
|
|
import java.util.*;
|
import ${jakartaPackage}.validation.*;
|
import ${basePackage}.module.${table.moduleName}.controller.${sceneEnum.basePackage}.${table.businessName}.vo.*;
|
import ${basePackage}.module.${table.moduleName}.dal.dataobject.${table.businessName}.${table.className}DO;
|
## 特殊:主子表专属逻辑
|
#foreach ($subTable in $subTables)
|
import ${basePackage}.module.${subTable.moduleName}.dal.dataobject.${subTable.businessName}.${subTable.className}DO;
|
#end
|
import ${PageResultClassName};
|
import ${PageParamClassName};
|
|
/**
|
* ${table.classComment} Service 接口
|
*
|
* @author ${table.author}
|
*/
|
public interface ${table.className}Service {
|
|
/**
|
* 创建${table.classComment}
|
*
|
* @param createReqVO 创建信息
|
* @return 编号
|
*/
|
${primaryColumn.javaType} create${simpleClassName}(@Valid ${sceneEnum.prefixClass}${table.className}SaveReqVO createReqVO);
|
|
/**
|
* 更新${table.classComment}
|
*
|
* @param updateReqVO 更新信息
|
*/
|
void update${simpleClassName}(@Valid ${sceneEnum.prefixClass}${table.className}SaveReqVO updateReqVO);
|
|
/**
|
* 删除${table.classComment}
|
*
|
* @param id 编号
|
*/
|
void delete${simpleClassName}(${primaryColumn.javaType} id);
|
|
/**
|
* 获得${table.classComment}
|
*
|
* @param id 编号
|
* @return ${table.classComment}
|
*/
|
${table.className}DO get${simpleClassName}(${primaryColumn.javaType} id);
|
|
## 特殊:树表专属逻辑(树不需要分页接口)
|
#if ( $table.templateType != 2 )
|
/**
|
* 获得${table.classComment}分页
|
*
|
* @param pageReqVO 分页查询
|
* @return ${table.classComment}分页
|
*/
|
PageResult<${table.className}DO> get${simpleClassName}Page(${sceneEnum.prefixClass}${table.className}PageReqVO pageReqVO);
|
#else
|
/**
|
* 获得${table.classComment}列表
|
*
|
* @param listReqVO 查询条件
|
* @return ${table.classComment}列表
|
*/
|
List<${table.className}DO> get${simpleClassName}List(${sceneEnum.prefixClass}${table.className}ListReqVO listReqVO);
|
#end
|
|
## 特殊:主子表专属逻辑
|
#foreach ($subTable in $subTables)
|
#set ($index = $foreach.count - 1)
|
#set ($subSimpleClassName = $subSimpleClassNames.get($index))
|
#set ($subPrimaryColumn = $subPrimaryColumns.get($index))##当前 primary 字段
|
#set ($subJoinColumn = $subJoinColumns.get($index))##当前 join 字段
|
#set ($SubJoinColumnName = $subJoinColumn.javaField.substring(0,1).toUpperCase() + ${subJoinColumn.javaField.substring(1)})##首字母大写
|
#set ($subClassNameVar = $subClassNameVars.get($index))
|
// ==================== 子表($subTable.classComment) ====================
|
|
## 情况一:MASTER_ERP 时,需要分查询页子表
|
#if ( $table.templateType == 11 )
|
/**
|
* 获得${subTable.classComment}分页
|
*
|
* @param pageReqVO 分页查询
|
* @param ${subJoinColumn.javaField} ${subJoinColumn.columnComment}
|
* @return ${subTable.classComment}分页
|
*/
|
PageResult<${subTable.className}DO> get${subSimpleClassName}Page(PageParam pageReqVO, ${subJoinColumn.javaType} ${subJoinColumn.javaField});
|
|
## 情况二:非 MASTER_ERP 时,需要列表查询子表
|
#else
|
#if ( $subTable.subJoinMany )
|
/**
|
* 获得${subTable.classComment}列表
|
*
|
* @param ${subJoinColumn.javaField} ${subJoinColumn.columnComment}
|
* @return ${subTable.classComment}列表
|
*/
|
List<${subTable.className}DO> get${subSimpleClassName}ListBy${SubJoinColumnName}(${subJoinColumn.javaType} ${subJoinColumn.javaField});
|
|
#else
|
/**
|
* 获得${subTable.classComment}
|
*
|
* @param ${subJoinColumn.javaField} ${subJoinColumn.columnComment}
|
* @return ${subTable.classComment}
|
*/
|
${subTable.className}DO get${subSimpleClassName}By${SubJoinColumnName}(${subJoinColumn.javaType} ${subJoinColumn.javaField});
|
|
#end
|
#end
|
## 特殊:MASTER_ERP 时,支持单个的新增、修改、删除操作
|
#if ( $table.templateType == 11 )
|
/**
|
* 创建${subTable.classComment}
|
*
|
* @param ${subClassNameVar} 创建信息
|
* @return 编号
|
*/
|
${subPrimaryColumn.javaType} create${subSimpleClassName}(@Valid ${subTable.className}DO ${subClassNameVar});
|
|
/**
|
* 更新${subTable.classComment}
|
*
|
* @param ${subClassNameVar} 更新信息
|
*/
|
void update${subSimpleClassName}(@Valid ${subTable.className}DO ${subClassNameVar});
|
|
/**
|
* 删除${subTable.classComment}
|
*
|
* @param id 编号
|
*/
|
void delete${subSimpleClassName}(${subPrimaryColumn.javaType} id);
|
|
/**
|
* 获得${subTable.classComment}
|
*
|
* @param id 编号
|
* @return ${subTable.classComment}
|
*/
|
${subTable.className}DO get${subSimpleClassName}(${subPrimaryColumn.javaType} id);
|
|
#end
|
#end
|
}
|