5b80cee39c8ff724f95bd3a37416450d5b249052.svn-base 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. package ${bussiPackage}.${entityPackage}.service.impl;
  2. import ${bussiPackage}.${entityPackage}.entity.${entityName};
  3. <#list subTables as sub>
  4. import ${bussiPackage}.${entityPackage}.entity.${sub.entityName};
  5. </#list>
  6. <#list subTables as sub>
  7. import ${bussiPackage}.${entityPackage}.mapper.${sub.entityName}Mapper;
  8. </#list>
  9. import ${bussiPackage}.${entityPackage}.mapper.${entityName}Mapper;
  10. import ${bussiPackage}.${entityPackage}.service.I${entityName}Service;
  11. import org.springframework.stereotype.Service;
  12. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.transaction.annotation.Transactional;
  15. import java.io.Serializable;
  16. import java.util.List;
  17. import java.util.Collection;
  18. /**
  19. * @Description: ${tableVo.ftlDescription}
  20. * @Author: jeecg-boot
  21. * @Date: ${.now?string["yyyy-MM-dd"]}
  22. * @Version: V1.0
  23. */
  24. @Service
  25. public class ${entityName}ServiceImpl extends ServiceImpl<${entityName}Mapper, ${entityName}> implements I${entityName}Service {
  26. @Autowired
  27. private ${entityName}Mapper ${entityName?uncap_first}Mapper;
  28. <#list subTables as sub>
  29. @Autowired
  30. private ${sub.entityName}Mapper ${sub.entityName?uncap_first}Mapper;
  31. </#list>
  32. @Override
  33. @Transactional
  34. public void saveMain(${entityName} ${entityName?uncap_first}, <#list subTables as sub>List<${sub.entityName}> ${sub.entityName?uncap_first}List<#if sub_has_next>,</#if></#list>) {
  35. ${entityName?uncap_first}Mapper.insert(${entityName?uncap_first});
  36. <#list subTables as sub>
  37. if(${sub.entityName?uncap_first}List!=null && ${sub.entityName?uncap_first}List.size()>0) {
  38. for(${sub.entityName} entity:${sub.entityName?uncap_first}List) {
  39. <#list sub.foreignKeys as key>
  40. //外键设置
  41. <#if key?lower_case?index_of("${primaryKeyField}")!=-1>
  42. entity.set${key?cap_first}(${entityName?uncap_first}.get${primaryKeyField?cap_first}());
  43. <#else>
  44. entity.set${key?cap_first}(${entityName?uncap_first}.get${key}());
  45. </#if>
  46. </#list>
  47. ${sub.entityName?uncap_first}Mapper.insert(entity);
  48. }
  49. }
  50. </#list>
  51. }
  52. @Override
  53. @Transactional
  54. public void updateMain(${entityName} ${entityName?uncap_first},<#list subTables as sub>List<${sub.entityName}> ${sub.entityName?uncap_first}List<#if sub_has_next>,</#if></#list>) {
  55. ${entityName?uncap_first}Mapper.updateById(${entityName?uncap_first});
  56. //1.先删除子表数据
  57. <#list subTables as sub>
  58. ${sub.entityName?uncap_first}Mapper.deleteByMainId(${entityName?uncap_first}.getId());
  59. </#list>
  60. //2.子表数据重新插入
  61. <#list subTables as sub>
  62. if(${sub.entityName?uncap_first}List!=null && ${sub.entityName?uncap_first}List.size()>0) {
  63. for(${sub.entityName} entity:${sub.entityName?uncap_first}List) {
  64. <#list sub.foreignKeys as key>
  65. //外键设置
  66. <#if key?lower_case?index_of("${primaryKeyField}")!=-1>
  67. entity.set${key?cap_first}(${entityName?uncap_first}.get${primaryKeyField?cap_first}());
  68. <#else>
  69. entity.set${key?cap_first}(${entityName?uncap_first}.get${key}());
  70. </#if>
  71. </#list>
  72. ${sub.entityName?uncap_first}Mapper.insert(entity);
  73. }
  74. }
  75. </#list>
  76. }
  77. @Override
  78. @Transactional
  79. public void delMain(String id) {
  80. <#list subTables as sub>
  81. ${sub.entityName?uncap_first}Mapper.deleteByMainId(id);
  82. </#list>
  83. ${entityName?uncap_first}Mapper.deleteById(id);
  84. }
  85. @Override
  86. @Transactional
  87. public void delBatchMain(Collection<? extends Serializable> idList) {
  88. for(Serializable id:idList) {
  89. <#list subTables as sub>
  90. ${sub.entityName?uncap_first}Mapper.deleteByMainId(id.toString());
  91. </#list>
  92. ${entityName?uncap_first}Mapper.deleteById(id);
  93. }
  94. }
  95. }