<#include "../function.ftl"> <#include "../variable.ftl"> <#if isBaseModule = 'true'> package com.${cAlias}.${cPlatform}.${sys}.domain; <#else> package com.${cAlias}.${cPlatform}.${sys}.${module}.domain; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Service; <#if hasSub?exists && hasSub==true> import com.${scAlias}.${scPlatform}.base.core.util.string.StringUtil; import com.${scAlias}.${scPlatform}.base.core.util.AppUtil; import com.${scAlias}.${scPlatform}.base.framework.domain.AbstractDomain; <#if isBaseModule = 'true'> import com.${cAlias}.${cPlatform}.${sys}.persistence.dao.${class}Dao; import com.${cAlias}.${cPlatform}.${sys}.persistence.entity.${class}Po; <#if hasSub?exists && hasSub==true> <#list model.subTableList as subTable> import com.${cAlias}.${cPlatform}.${sys}.persistence.dao.${subTable.variables.class}Dao; import com.${cAlias}.${cPlatform}.${sys}.persistence.entity.${subTable.variables.class}Po; <#else> import com.${cAlias}.${cPlatform}.${sys}.${module}.persistence.dao.${class}Dao; import com.${cAlias}.${cPlatform}.${sys}.${module}.persistence.entity.${class}Po; <#if hasSub?exists && hasSub==true> <#list model.subTableList as subTable> import com.${cAlias}.${cPlatform}.${sys}.${module}.persistence.dao.${subTable.variables.class}Dao; import com.${cAlias}.${cPlatform}.${sys}.${module}.persistence.entity.${subTable.variables.class}Po; /** * ${model.tabComment} 领域对象实体 * *
 
 <#if vars.company?exists>
 * 开发公司:${vars.company}
 
 <#if vars.developer?exists>
 * 开发人员:${vars.developer}
 
 <#if vars.email?exists>
 * 邮箱地址:${vars.email}
 
 * 创建时间:${date?string("yyyy-MM-dd HH:mm:ss")}
 *
*/ @SuppressWarnings("serial") @Service @Scope("prototype") public class ${class} extends AbstractDomain{ private ${class}Dao ${classVar}Dao = null; <#if hasSub?exists && hasSub==true> <#list model.subTableList as subTable> private ${subTable.variables.class}Dao ${subTable.variables.classVar}Dao = null; protected void init(){ ${classVar}Dao = AppUtil.getBean(${class}Dao.class); <#if hasSub?exists && hasSub==true><#list model.subTableList as subTable> ${subTable.variables.classVar}Dao = AppUtil.getBean(${subTable.variables.class}Dao.class); this.setDao(${classVar}Dao); } <#if hasSub?exists && hasSub==true> /** * 主从表一并保存 * void * @exception * @since 1.0.0 */ public void saveCascade(){ save(); if(getData().isDelBeforeSave()){ <#list model.subTableList as subTable> ${subTable.variables.classVar}Dao.deleteByMainId(getId()); } <#list model.subTableList as subTable> for(${subTable.variables.class}Po ${subTable.variables.classVar}Po:getData().get${subTable.variables.class}PoList()){ //设置外键 <#assign foreignKey=convertUnderLine(subTable.foreignKey)> ${subTable.variables.classVar}Po.set${foreignKey?cap_first}(getId()); //判断是新增还是更新 if(StringUtil.isEmpty(${subTable.variables.classVar}Po.getId())){ ${subTable.variables.classVar}Po.setId(getIdGenerator().getId()); } ${subTable.variables.classVar}Dao.create(${subTable.variables.classVar}Po); } } /** * 主从表一并删除 * void * @exception * @since 1.0.0 */ public void deleteByIdsCascade(String[] ids){ for(String id : ids){ <#list model.subTableList as subTable> ${subTable.variables.classVar}Dao.deleteByMainId(id); } deleteByIds(ids); } }