提交 5f55714e 编写于 作者: zhouweidong's avatar zhouweidong

主实体删除关联实体行为(同步删除、置空、限制删除)

上级 ccd2e95a
......@@ -176,16 +176,25 @@ public interface I${item.codeName}Service{
<#if de.getDefaultPSDEDataSet()??>
<#assign deDefaultDataSet=de.getDefaultPSDEDataSet()>
<#if deDefaultDataSet.getPSDEDataQueries()??>
List<${item.getCodeName()}> selectBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case}) ;
<#--List<${item.getCodeName()}> selectBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids) ;-->
<#if item.isEnableEntityCache()==true>
List<${item.getCodeName()}> selectBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case});
<#comment>主实体关联实体行为</#comment>
<#if MinorPSDER.getRemoveActionType()??>
<#if MinorPSDER.getRemoveActionType()?c=='3'><#comment>限制删除</#comment>
List<${item.getCodeName()}> selectBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids);
<#elseif MinorPSDER.getRemoveActionType()?c=='2'><#comment>置空</#comment>
void resetBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case});
void resetBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids);
<#elseif MinorPSDER.getRemoveActionType()?c=='1'><#comment>同时删除</#comment>
<#if item.isEnableEntityCache()==true>
@CacheEvict(value="${item.codeName?lower_case}",allEntries=true)
</#if>
void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids);
</#if>
</#if>
void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case}) ;
<#if item.isEnableEntityCache()==true>
@CacheEvict(value="${item.codeName?lower_case}",allEntries=true)
</#if>
void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids) ;
void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case});
<#assign nested=MinorPSDER.isNestedRS()>
<#if nested == false && MinorPSDER.getMinorPSDataEntity().getAllPSDEServiceAPIs()??>
<#list MinorPSDER.getMinorPSDataEntity().getAllPSDEServiceAPIs() as api>
......
......@@ -595,17 +595,13 @@ public class ${item.getCodeName()}ServiceImpl extends ServiceImpl<${de.getCodeNa
public List<${item.getCodeName()}> selectBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case}) {
return baseMapper.selectBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${MajorkeyField.codeName?lower_case});
}
<#comment>主实体删除关联实体行为</#comment>
<@majorEntityRemove_RefAction_SqlStore MinorPSDER>
@Override
public void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case}) {
this.remove(new QueryWrapper<${item.getCodeName()}>().eq("${MajorField.getName()?lower_case}",${MajorkeyField.codeName?lower_case}));
}
@Override
public void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids) {
this.remove(new QueryWrapper<${item.getCodeName()}>().in("${MajorField.getName()?lower_case}",ids));
}
<#assign nested=MinorPSDER.isNestedRS()>
<#if nested == false && MinorPSDER.getMinorPSDataEntity().getAllPSDEServiceAPIs()??>
<#list MinorPSDER.getMinorPSDataEntity().getAllPSDEServiceAPIs() as api>
......@@ -1339,7 +1335,8 @@ public class ${item.getCodeName()}ServiceImpl implements I${de.getCodeName()}Ser
Query query = new BasicQuery(context.getSelectCond().get().toString());
return mongoTemplate.find(query,${item.getCodeName()}.class);
}
<#comment>输出主实体删除关联行为</#comment>
<@majorEntityRemove_RefAction MinorPSDER/>
@Override
public void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case}) {
Set<${srfr7javatype(keyfield.stdDataType)}> delIds=new HashSet<${srfr7javatype(keyfield.stdDataType)}>();
......@@ -1349,12 +1346,6 @@ public class ${item.getCodeName()}ServiceImpl implements I${de.getCodeName()}Ser
if(delIds.size()>0)
this.removeBatch(delIds);
}
@Override
public void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids) {
//暂未支持
}
<#assign nested=MinorPSDER.isNestedRS()>
<#if nested == false && MinorPSDER.getMinorPSDataEntity().getAllPSDEServiceAPIs()??>
<#list MinorPSDER.getMinorPSDataEntity().getAllPSDEServiceAPIs() as api>
......@@ -1879,7 +1870,8 @@ public class ${item.getCodeName()}ServiceImpl implements I${de.getCodeName()}Ser
context.setN_${MajorField.name?lower_case}_eq(${MajorkeyField.codeName?lower_case});
return ${subSysServiceApiDECodeName?uncap_first}FeignClient.search${deDefaultDataSet.getCodeName()}(context).getContent();
}
<#comment>输出主实体删除关联行为</#comment>
<@majorEntityRemove_RefAction MinorPSDER/>
@Override
public void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case}) {
Set<${srfr7javatype(keyfield.stdDataType)}> delIds=new HashSet<${srfr7javatype(keyfield.stdDataType)}>();
......@@ -1890,11 +1882,6 @@ public class ${item.getCodeName()}ServiceImpl implements I${de.getCodeName()}Ser
this.removeBatch(delIds);
}
@Override
public void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids) {
//暂未支持
}
<#assign nested=MinorPSDER.isNestedRS()>
<#if nested == false && MinorPSDER.getMinorPSDataEntity().getAllPSDEServiceAPIs()??>
<#list MinorPSDER.getMinorPSDataEntity().getAllPSDEServiceAPIs() as api>
......@@ -2202,7 +2189,8 @@ public class ${item.getCodeName()}ServiceImpl implements I${de.getCodeName()}Ser
public List<${item.getCodeName()}> selectBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case}) {
return null;
}
<#comment>输出主实体删除关联行为</#comment>
<@majorEntityRemove_RefAction MinorPSDER/>
@Override
public void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case}) {
Set<${srfr7javatype(keyfield.stdDataType)}> delIds=new HashSet<${srfr7javatype(keyfield.stdDataType)}>();
......@@ -2213,11 +2201,6 @@ public class ${item.getCodeName()}ServiceImpl implements I${de.getCodeName()}Ser
this.removeBatch(delIds);
}
@Override
public void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids) {
//暂未支持
}
<#assign nested=MinorPSDER.isNestedRS()>
<#if nested == false && MinorPSDER.getMinorPSDataEntity().getAllPSDEServiceAPIs()??>
<#list MinorPSDER.getMinorPSDataEntity().getAllPSDEServiceAPIs() as api>
......@@ -2882,8 +2865,9 @@ public class ${item.getCodeName()}ServiceImpl implements I${de.getCodeName()}Ser
<#assign minorKeyField = der.getMinorPSDataEntity().getKeyPSDEField()>
<#assign minorEntityCodeName=der.getMinorPSDataEntity().getCodeName()>
<#if der.getRemoveActionType()?c=='1'><#comment>同时删除</#comment>
${srfcaseformat(minorEntityCodeName,'l_u2lC')}Service.removeBy${srfcaseformat(MajorDerField.codeName,'l_u2lC')?cap_first}(key) ;
${srfcaseformat(minorEntityCodeName,'l_u2lC')}Service.removeBy${srfcaseformat(MajorDerField.codeName,'l_u2lC')?cap_first}(key);
<#elseif der.getRemoveActionType()?c=='2'><#comment>置空</#comment>
${srfcaseformat(minorEntityCodeName,'l_u2lC')}Service.resetBy${srfcaseformat(MajorDerField.codeName,'l_u2lC')?cap_first}(key);
<#elseif der.getRemoveActionType()?c=='3'><#comment>限制删除</#comment>
if(!ObjectUtils.isEmpty(${srfcaseformat(minorEntityCodeName,'l_u2lC')}Service.selectBy${srfcaseformat(MajorDerField.codeName,'l_u2lC')?cap_first}(key)))
throw new BadRequestAlertException("删除数据失败,当前数据存在关系实体[${minorEntityCodeName}]数据,无法删除!","","");
......@@ -2900,13 +2884,75 @@ public class ${item.getCodeName()}ServiceImpl implements I${de.getCodeName()}Ser
<#assign minorKeyField = der.getMinorPSDataEntity().getKeyPSDEField()>
<#assign minorEntityCodeName=der.getMinorPSDataEntity().getCodeName()>
<#if der.getRemoveActionType()?c=='1'><#comment>同时删除</#comment>
${srfcaseformat(minorEntityCodeName,'l_u2lC')}Service.removeBy${srfcaseformat(MajorDerField.codeName,'l_u2lC')?cap_first}(idList) ;
${srfcaseformat(minorEntityCodeName,'l_u2lC')}Service.removeBy${srfcaseformat(MajorDerField.codeName,'l_u2lC')?cap_first}(idList);
<#elseif der.getRemoveActionType()?c=='2'><#comment>置空</#comment>
${srfcaseformat(minorEntityCodeName,'l_u2lC')}Service.resetBy${srfcaseformat(MajorDerField.codeName,'l_u2lC')?cap_first}(idList);
<#elseif der.getRemoveActionType()?c=='3'><#comment>限制删除</#comment>
if(!ObjectUtils.isEmpty(${srfcaseformat(minorEntityCodeName,'l_u2lC')}Service.selectBy${srfcaseformat(MajorDerField.codeName,'l_u2lC')?cap_first}(idList)))
throw new BadRequestAlertException("删除数据失败,当前数据存在关系实体[${minorEntityCodeName}]数据,无法删除!","","");
</#if>
</#if>
</#list>
</#if>
</#macro>
<#comment>主实体关联实体行为</#comment>
<#macro majorEntityRemove_RefAction_SqlStore MinorPSDER>
<#if MinorPSDER.getRemoveActionType()??>
<#if MinorPSDER.getRemoveActionType()?c=='3'><#comment>限制删除</#comment>
@Override
public List<${item.getCodeName()}> selectBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids) {
return this.list(new QueryWrapper<${item.getCodeName()}>().in("${MajorkeyField.codeName?lower_case}",ids));
}
<#elseif MinorPSDER.getRemoveActionType()?c=='2'><#comment>置空</#comment>
@Override
public void resetBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case}) {
this.update(new UpdateWrapper<${item.getCodeName()}>().set("${MajorField.getName()?lower_case}",null).eq("${MajorField.getName()?lower_case}",${MajorkeyField.codeName?lower_case}));
}
@Override
public void resetBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids) {
this.update(new UpdateWrapper<${item.getCodeName()}>().set("${MajorField.getName()?lower_case}",null).in("${MajorField.getName()?lower_case}",ids));
}
<#elseif MinorPSDER.getRemoveActionType()?c=='1'><#comment>同时删除</#comment>
@Override
public void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids) {
this.remove(new QueryWrapper<${item.getCodeName()}>().in("${MajorField.getName()?lower_case}",ids));
}
</#if>
</#if>
</#macro>
<#comment>主实体关联实体行为</#comment>
<#macro majorEntityRemove_RefAction MinorPSDER>
<#if MinorPSDER.getRemoveActionType()??>
<#if MinorPSDER.getRemoveActionType()?c=='3'><#comment>限制删除</#comment>
@Override
public List<${item.getCodeName()}> selectBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids) {
//暂未支持
return null;
}
<#elseif MinorPSDER.getRemoveActionType()?c=='2'><#comment>置空</#comment>
@Override
public void resetBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(${srfr7javatype(MajorField.stdDataType)} ${MajorkeyField.codeName?lower_case}) {
}
@Override
public void resetBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids) {
}
<#elseif MinorPSDER.getRemoveActionType()?c=='1'><#comment>同时删除</#comment>
@Override
public void removeBy${srfcaseformat(MajorField.codeName,'l_u2lC')?cap_first}(Collection<${srfr7javatype(MajorField.stdDataType)}> ids) {
}
</#if>
</#if>
</#macro>
</#if>
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册