serviceImpl.java.vm 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. package ${packageName}.service.impl;
  2. import java.util.List;
  3. #foreach ($column in $columns)
  4. #if($column.javaField == 'createTime' || $column.javaField == 'updateTime')
  5. import com.xunmei.common.core.utils.DateUtils;
  6. #break
  7. #end
  8. #end
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.stereotype.Service;
  11. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  12. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  13. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  14. import com.xunmei.common.core.web.page.TableDataInfo;
  15. #if($table.sub)
  16. import java.util.ArrayList;
  17. import com.xunmei.common.core.utils.StringUtils;
  18. import org.springframework.transaction.annotation.Transactional;
  19. import ${packageName}.domain.${subClassName};
  20. #end
  21. import ${packageName}.mapper.${ClassName}Mapper;
  22. import ${packageName}.domain.${ClassName};
  23. import ${packageName}.service.I${ClassName}Service;
  24. /**
  25. * ${functionName}Service业务层处理
  26. *
  27. * @author ${author}
  28. * @date ${datetime}
  29. */
  30. @Service
  31. public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper, ${ClassName}> implements I${ClassName}Service {
  32. @Autowired
  33. private ${ClassName}Mapper ${className}Mapper;
  34. @Override
  35. public TableDataInfo selectPage(${ClassName} ${className}) {
  36. Page<${ClassName}> page;
  37. if (${className}.getPageNum() != null &&${className}.getPageSize() != null){
  38. page = new Page<>(${className}.getPageNum(), ${className}.getPageSize());
  39. }else{
  40. page = new Page<>();
  41. }
  42. QueryWrapper<${ClassName}> where = new QueryWrapper<>(${className});
  43. Page<${ClassName}> list = baseMapper.selectPage(page, where);
  44. TableDataInfo rspData = new TableDataInfo();
  45. rspData.setRows(list.getRecords());
  46. rspData.setTotal(list.getTotal());
  47. return rspData;
  48. }
  49. /**
  50. * 查询${functionName}
  51. *
  52. * @param ${pkColumn.javaField} ${functionName}主键
  53. * @return ${functionName}
  54. */
  55. @Override
  56. public ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}) {
  57. return ${className}Mapper.select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField});
  58. }
  59. /**
  60. * 查询${functionName}列表
  61. *
  62. * @param ${className} ${functionName}
  63. * @return ${functionName}
  64. */
  65. @Override
  66. public List<${ClassName}> select${ClassName}List(${ClassName} ${className}) {
  67. return ${className}Mapper.select${ClassName}List(${className});
  68. }
  69. /**
  70. * 新增${functionName}
  71. *
  72. * @param ${className} ${functionName}
  73. * @return 结果
  74. */
  75. #if($table.sub)
  76. @Transactional
  77. #end
  78. @Override
  79. public int insert${ClassName}(${ClassName} ${className}) {
  80. #foreach ($column in $columns)
  81. #if($column.javaField == 'createTime')
  82. ${className}.setCreateTime(DateUtils.getNowDate());
  83. #end
  84. #end
  85. #if($table.sub)
  86. int rows = ${className}Mapper.insert${ClassName}(${className});
  87. insert${subClassName}(${className});
  88. return rows;
  89. #else
  90. return ${className}Mapper.insert${ClassName}(${className});
  91. #end
  92. }
  93. /**
  94. * 修改${functionName}
  95. *
  96. * @param ${className} ${functionName}
  97. * @return 结果
  98. */
  99. #if($table.sub)
  100. @Transactional
  101. #end
  102. @Override
  103. public int update${ClassName}(${ClassName} ${className}) {
  104. #foreach ($column in $columns)
  105. #if($column.javaField == 'updateTime')
  106. ${className}.setUpdateTime(DateUtils.getNowDate());
  107. #end
  108. #end
  109. #if($table.sub)
  110. ${className}Mapper.delete${subClassName}By${subTableFkClassName}(${className}.get${pkColumn.capJavaField}())
  111. ;
  112. insert${subClassName}(${className});
  113. #end
  114. return ${className}Mapper.update${ClassName}(${className});
  115. }
  116. /**
  117. * 批量删除${functionName}
  118. *
  119. * @param ${pkColumn.javaField}s 需要删除的${functionName}主键
  120. * @return 结果
  121. */
  122. #if($table.sub)
  123. @Transactional
  124. #end
  125. @Override
  126. public int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s) {
  127. #if($table.sub)
  128. ${className}Mapper.delete${subClassName}By${subTableFkClassName}s(${pkColumn.javaField}s);
  129. #end
  130. return ${className}Mapper.delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaField}s);
  131. }
  132. /**
  133. * 删除${functionName}信息
  134. *
  135. * @param ${pkColumn.javaField} ${functionName}主键
  136. * @return 结果
  137. */
  138. #if($table.sub)
  139. @Transactional
  140. #end
  141. @Override
  142. public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}) {
  143. #if($table.sub)
  144. ${className}Mapper.delete${subClassName}By${subTableFkClassName}(${pkColumn.javaField});
  145. #end
  146. return ${className}Mapper.delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField});
  147. }
  148. #if($table.sub)
  149. /**
  150. * 新增${subTable.functionName}信息
  151. *
  152. * @param ${className} ${functionName}对象
  153. */
  154. public void insert${subClassName}(${ClassName} ${className}) {
  155. List<${subClassName}> ${subclassName}List = ${className}.get${subClassName}List();
  156. ${pkColumn.javaType} ${pkColumn.javaField} = ${className}.get${pkColumn.capJavaField}();
  157. if (StringUtils.isNotNull(${subclassName}List)) {
  158. List<${subClassName}> list = new ArrayList<${subClassName}>();
  159. for (${subClassName} ${subclassName} :${subclassName}List)
  160. {
  161. ${subclassName}.set${subTableFkClassName}(${pkColumn.javaField});
  162. list.add(${subclassName});
  163. }
  164. if (list.size() > 0) {
  165. ${className}Mapper.batch${subClassName}(list);
  166. }
  167. }
  168. }
  169. #end
  170. }