ServiceImpl.java.vm 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. #parse("PublicMacro/ServiceImpMarco.vm")
  2. #set($moduleName = "${mainModelName.substring(0,1).toLowerCase()}${mainModelName.substring(1).toLowerCase()}")
  3. #set($peimaryKeyName="${pKeyName.substring(0,1).toUpperCase()}${pKeyName.substring(1)}")
  4. package ${package.ServiceImpl};
  5. import ${package.Entity}.*;
  6. import ${package.Mapper}.${table.mapperName};
  7. import ${package.Service}.*;
  8. import ${superServiceImplClassPackage};
  9. import ${modulePackageName}.model.${moduleName}.*;
  10. import org.springframework.stereotype.Service;
  11. import jnpf.base.service.SuperServiceImpl;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import jnpf.util.GeneraterSwapUtil;
  14. import java.sql.Connection;
  15. import java.sql.SQLException;
  16. import lombok.Cleanup;
  17. import jnpf.database.plugins.DynamicSourceGeneratorInterface;
  18. import jnpf.database.util.DynamicDataSourceUtil;
  19. import org.apache.commons.collections4.CollectionUtils;
  20. import jnpf.i18n.util.I18nUtil;
  21. import jnpf.exception.DataException;
  22. import jnpf.constant.MsgCode;
  23. #if(${DS})
  24. import com.baomidou.dynamic.datasource.annotation.DS;
  25. import jnpf.database.util.DataSourceUtil;
  26. import jnpf.database.model.entity.DbLinkEntity;
  27. import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
  28. #end
  29. #if(${main})
  30. import java.math.BigDecimal;
  31. import cn.hutool.core.util.ObjectUtil;
  32. import java.lang.reflect.Field;
  33. import com.baomidou.mybatisplus.annotation.TableField;
  34. import com.baomidou.mybatisplus.annotation.TableName;
  35. import java.util.regex.Pattern;
  36. import java.util.stream.Collectors;
  37. import jnpf.base.model.ColumnDataModel;
  38. import com.baomidou.mybatisplus.core.metadata.IPage;
  39. import org.springframework.transaction.annotation.Transactional;
  40. import com.baomidou.dynamic.datasource.annotation.DSTransactional;
  41. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  42. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  43. import com.github.yulichang.toolkit.JoinWrappers;
  44. import com.github.yulichang.wrapper.MPJLambdaWrapper;
  45. import jnpf.model.QueryAllModel;
  46. import java.text.SimpleDateFormat;
  47. import jnpf.util.*;
  48. import java.util.*;
  49. import jnpf.base.UserInfo;
  50. import jnpf.permission.entity.UserEntity;
  51. import com.github.pagehelper.PageHelper;
  52. #end
  53. /**
  54. *
  55. * ${genInfo.description}
  56. * 版本: ${genInfo.version}
  57. * 版权: ${genInfo.copyright}
  58. * 作者: ${genInfo.createUser}
  59. * 日期: ${genInfo.createDate}
  60. */
  61. @Service
  62. #if(${DS})
  63. @DS("${DS}")
  64. #end
  65. public class ${table.serviceImplName} extends SuperServiceImpl<${table.mapperName}, ${table.entityName}> implements ${table.serviceName}#if(${DS}),DynamicSourceGeneratorInterface #end{
  66. @Autowired
  67. private GeneraterSwapUtil generaterSwapUtil;
  68. #if(${main})
  69. @Autowired
  70. private UserProvider userProvider;
  71. #foreach($child in ${columnTableHandle})
  72. @Autowired
  73. private ${child.modelUpName}Service ${child.modelLowName}Service;
  74. #end
  75. #foreach($subfield in ${childTableHandle})
  76. @Autowired
  77. private ${subfield.aliasUpName}Service ${subfield.aliasLowName}Service;
  78. #end
  79. ## 通用变量
  80. #set($Name = "${genInfo.className.substring(0,1).toUpperCase()}${genInfo.className.substring(1)}")
  81. #set($name = "${genInfo.className.substring(0,1).toLowerCase()}${genInfo.className.substring(1)}")
  82. #set($QueryWrapper = "${name}QueryWrapper")
  83. #set($serviceName = "${table.serviceName.substring(0,1).toLowerCase()}${table.serviceName.substring(1)}")
  84. #set($Entity = "${table.entityName}")
  85. #set($searchListSize =$!{searchList})
  86. #if($isList)
  87. ## 列表接口
  88. #GetTypeList()
  89. #end
  90. ## 增删改查接口
  91. #CrudMethod()
  92. ## 表单验证
  93. #CheckForm()
  94. ## 业务主键验证
  95. #if(${useBusinessKey})
  96. #CheckBusinessKey()
  97. #end
  98. ## 保存修改事务方法
  99. #SaveOrUpdate()
  100. #end
  101. ## 数据源切换
  102. #if(${DS})
  103. @Override
  104. public DataSourceUtil getDataSource() {
  105. return generaterSwapUtil.getDataSource(this.getClass().getAnnotation(DS.class).value());
  106. }
  107. #end
  108. }