serviceImpl.java.vm 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287
  1. package ${packageName}.service.impl;
  2. import java.util.List;
  3. #if($table.tree)
  4. import java.util.ArrayList;
  5. import com.goods2c.common.core.domain.Ztree;
  6. #end
  7. #foreach ($column in $columns)
  8. #if($column.javaField == 'createTime' || $column.javaField == 'updateTime')
  9. import com.goods2c.common.utils.DateUtils;
  10. #break
  11. #end
  12. #end
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.stereotype.Service;
  15. #if($table.sub)
  16. import java.util.ArrayList;
  17. import com.goods2c.common.utils.StringUtils;
  18. import org.springframework.transaction.annotation.Transactional;
  19. import ${packageName}.${businessName}.domain.${subClassName};
  20. #end
  21. import ${packageName}.${businessName}.mapper.${ClassName}Mapper;
  22. import ${packageName}.${businessName}.domain.${ClassName};
  23. import ${packageName}.${businessName}.domain.${ClassName}Vo;
  24. import ${packageName}.${businessName}.service.I${ClassName}Service;
  25. import com.goods2c.common.core.text.Convert;
  26. /**
  27. * ${functionName}Service业务层处理
  28. *
  29. * @author ${author}
  30. * @date ${datetime}
  31. */
  32. @Service
  33. public class ${ClassName}ServiceImpl implements I${ClassName}Service
  34. {
  35. @Autowired
  36. private ${ClassName}Mapper ${className}Mapper;
  37. /**
  38. * 查询${functionName}
  39. *
  40. * @param ${pkColumn.javaField} ${functionName}主键
  41. * @return ${functionName}
  42. */
  43. @Override
  44. public ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField})
  45. {
  46. return ${className}Mapper.select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField});
  47. }
  48. /**
  49. * 查询${functionName}列表
  50. *
  51. * @param ${className} ${functionName}
  52. * @return ${functionName}
  53. */
  54. @Override
  55. public List<${ClassName}> select${ClassName}List(${ClassName} ${className})
  56. {
  57. return ${className}Mapper.select${ClassName}List(${className});
  58. }
  59. /**
  60. * 查询${functionName}
  61. *
  62. * @param ${pkColumn.javaField} ${functionName}主键
  63. * @return ${functionName}
  64. */
  65. @Override
  66. public ${ClassName}Vo select${ClassName}VoBy${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField})
  67. {
  68. return ${className}Mapper.select${ClassName}VoBy${pkColumn.capJavaField}(${pkColumn.javaField});
  69. }
  70. /**
  71. * 查询${functionName}列表
  72. *
  73. * @param ${className}Vo ${functionName}
  74. * @return ${functionName}
  75. */
  76. @Override
  77. public List<${ClassName}Vo> select${ClassName}VoList(${ClassName}Vo ${className}Vo)
  78. {
  79. return ${className}Mapper.select${ClassName}VoList(${className}Vo);
  80. }
  81. /**
  82. * 新增${functionName}
  83. *
  84. * @param ${className} ${functionName}
  85. * @return 结果
  86. */
  87. #if($table.sub)
  88. @Transactional
  89. #end
  90. @Override
  91. public int insert${ClassName}(${ClassName} ${className})
  92. {
  93. #foreach ($column in $columns)
  94. #if($column.javaField == 'createTime')
  95. ${className}.setCreateTime(DateUtils.getNowDate());
  96. #end
  97. #end
  98. #if($table.sub)
  99. int rows = ${className}Mapper.insert${ClassName}(${className});
  100. insert${subClassName}(${className});
  101. return rows;
  102. #else
  103. return ${className}Mapper.insert${ClassName}(${className});
  104. #end
  105. }
  106. /**
  107. * 新增${functionName}
  108. *
  109. * @param ${className}List ${functionName}
  110. * @return 结果
  111. */
  112. @Override
  113. public int batchInsert${ClassName}(List<${ClassName}> ${className}List)
  114. {
  115. return ${className}Mapper.batchInsert${ClassName}(${className}List);
  116. }
  117. /**
  118. * 修改${functionName}
  119. *
  120. * @param ${className} ${functionName}
  121. * @return 结果
  122. */
  123. #if($table.sub)
  124. @Transactional
  125. #end
  126. @Override
  127. public int update${ClassName}(${ClassName} ${className})
  128. {
  129. #foreach ($column in $columns)
  130. #if($column.javaField == 'updateTime')
  131. ${className}.setUpdateTime(DateUtils.getNowDate());
  132. #end
  133. #end
  134. #if($table.sub)
  135. ${className}Mapper.delete${subClassName}By${subTableFkClassName}(${className}.get${pkColumn.capJavaField}());
  136. insert${subClassName}(${className});
  137. #end
  138. return ${className}Mapper.update${ClassName}(${className});
  139. }
  140. /**
  141. * 批量删除${functionName}
  142. *
  143. * @param ${pkColumn.javaField}s 需要删除的${functionName}主键
  144. * @return 结果
  145. */
  146. #if($table.sub)
  147. @Transactional
  148. #end
  149. @Override
  150. public int delete${ClassName}By${pkColumn.capJavaField}s(String ${pkColumn.javaField}s)
  151. {
  152. #if($table.sub)
  153. ${className}Mapper.delete${subClassName}By${subTableFkClassName}s(Convert.toStrArray(${pkColumn.javaField}s));
  154. #end
  155. return ${className}Mapper.delete${ClassName}By${pkColumn.capJavaField}s(Convert.toStrArray(${pkColumn.javaField}s));
  156. }
  157. /**
  158. * 删除${functionName}信息
  159. *
  160. * @param ${pkColumn.javaField} ${functionName}主键
  161. * @return 结果
  162. */
  163. #if($table.sub)
  164. @Transactional
  165. #end
  166. @Override
  167. public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField})
  168. {
  169. #if($table.sub)
  170. ${className}Mapper.delete${subClassName}By${subTableFkClassName}(${pkColumn.javaField});
  171. #end
  172. return ${className}Mapper.delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField});
  173. }
  174. /**
  175. * 逻辑删除${functionName}
  176. *
  177. * @param ${pkColumn.javaField} ${functionName}主键
  178. * @return 结果
  179. */
  180. @Override
  181. public int logicDelete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField})
  182. {
  183. return ${className}Mapper.logicDelete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField});
  184. }
  185. /**
  186. * 逻辑批量删除${functionName}
  187. *
  188. * @param ${pkColumn.javaField}s 需要删除的数据主键集合
  189. * @return 结果
  190. */
  191. @Override
  192. public int logicDelete${ClassName}By${pkColumn.capJavaField}s(String[] ${pkColumn.javaField}s)
  193. {
  194. return ${className}Mapper.logicDelete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaField}s);
  195. }
  196. /**
  197. * 逻辑批量删除${functionName}
  198. *
  199. * @param ${className} ${functionName}
  200. * @return 结果
  201. */
  202. @Override
  203. public int logicDelete${ClassName}ByCondition(${ClassName} ${className})
  204. {
  205. return ${className}Mapper.logicDelete${ClassName}ByCondition(${className});
  206. }
  207. #if($table.tree)
  208. /**
  209. * 查询${functionName}树列表
  210. *
  211. * @return 所有${functionName}信息
  212. */
  213. @Override
  214. public List<Ztree> select${ClassName}Tree()
  215. {
  216. List<${ClassName}> ${className}List = ${className}Mapper.select${ClassName}List(new ${ClassName}());
  217. List<Ztree> ztrees = new ArrayList<Ztree>();
  218. for (${ClassName} ${className} : ${className}List)
  219. {
  220. Ztree ztree = new Ztree();
  221. #if($treeCode.length() > 2 && $treeCode.substring(1,2).matches("[A-Z]"))
  222. #set($TreeCode=$treeCode)
  223. #else
  224. #set($TreeCode=$treeCode.substring(0,1).toUpperCase() + ${treeCode.substring(1)})
  225. #end
  226. #if($treeParentCode.length() > 2 && $treeParentCode.substring(1,2).matches("[A-Z]"))
  227. #set($TreeParentCode=$treeParentCode)
  228. #else
  229. #set($TreeParentCode=$treeParentCode.substring(0,1).toUpperCase() + ${treeParentCode.substring(1)})
  230. #end
  231. #if($treeName.length() > 2 && $treeName.substring(1,2).matches("[A-Z]"))
  232. #set($TreeName=$treeName)
  233. #else
  234. #set($TreeName=$treeName.substring(0,1).toUpperCase() + ${treeName.substring(1)})
  235. #end
  236. ztree.setId(${className}.get${TreeCode}());
  237. ztree.setpId(${className}.get${TreeParentCode}());
  238. ztree.setName(${className}.get${TreeName}());
  239. ztree.setTitle(${className}.get${TreeName}());
  240. ztrees.add(ztree);
  241. }
  242. return ztrees;
  243. }
  244. #end
  245. #if($table.sub)
  246. /**
  247. * 新增${subTable.functionName}信息
  248. *
  249. * @param ${className} ${functionName}对象
  250. */
  251. public void insert${subClassName}(${ClassName} ${className})
  252. {
  253. List<${subClassName}> ${subclassName}List = ${className}.get${subClassName}List();
  254. ${pkColumn.javaType} ${pkColumn.javaField} = ${className}.get${pkColumn.capJavaField}();
  255. if (StringUtils.isNotNull(${subclassName}List))
  256. {
  257. List<${subClassName}> list = new ArrayList<${subClassName}>();
  258. for (${subClassName} ${subclassName} : ${subclassName}List)
  259. {
  260. ${subclassName}.set${subTableFkClassName}(${pkColumn.javaField});
  261. list.add(${subclassName});
  262. }
  263. if (list.size() > 0)
  264. {
  265. ${className}Mapper.batch${subClassName}(list);
  266. }
  267. }
  268. }
  269. #end
  270. }