1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
package ${package}.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
<#if columns??>
<#list columns as column>
<#if column.columnKey = 'UNI'>
<#if column_index = 1>
import me.zhengjie.exception.EntityExistException;
</#if>
</#if>
</#list>
</#if>
import lombok.AllArgsConstructor;
import admin.base.PageInfo;
import admin.base.QueryHelpMybatisPlus;
import admin.base.impl.CommonServiceImpl;
import admin.utils.ConvertUtil;
import admin.utils.PageUtil;
import ${package}.domain.${className};
import ${package}.service.${className}Service;
import ${package}.service.dto.${className}Dto;
import ${package}.service.dto.${className}QueryCriteria;
import ${package}.service.mapper.${className}Mapper;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
// 默认不使用缓存
//import org.springframework.cache.annotation.CacheConfig;
//import org.springframework.cache.annotation.CacheEvict;
//import org.springframework.cache.annotation.Cacheable;
import org.springframework.data.domain.Pageable;
import java.util.*;
/**
* @author ${author}
* @date ${date}
*/
@Service
@AllArgsConstructor
// @CacheConfig(cacheNames = ${className}Service.CACHE_KEY)
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class)
public class ${className}ServiceImpl extends CommonServiceImpl<${className}Mapper, ${className}> implements ${className}Service {
// private final RedisUtils redisUtils;
private final ${className}Mapper ${changeClassName}Mapper;
@Override
public PageInfo<${className}Dto> queryAll(${className}QueryCriteria query, Pageable pageable) {
IPage<${className}> queryPage = PageUtil.toMybatisPage(pageable);
IPage<${className}> page = ${changeClassName}Mapper.selectPage(queryPage, QueryHelpMybatisPlus.getPredicate(query));
return ConvertUtil.convertPage(page, ${className}Dto.class);
}
@Override
public List<${className}Dto> queryAll(${className}QueryCriteria query){
return ConvertUtil.convertList(${changeClassName}Mapper.selectList(QueryHelpMybatisPlus.getPredicate(query)), ${className}Dto.class);
}
@Override
public ${className} getById(${pkColumnType} id) {
return ${changeClassName}Mapper.selectById(id);
}
@Override
// @Cacheable(key = "'id:' + #p0")
public ${className}Dto findById(${pkColumnType} id) {
return ConvertUtil.convert(getById(id), ${className}Dto.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public int insert(${className}Dto resources) {
${className} entity = ConvertUtil.convert(resources, ${className}.class);
return ${changeClassName}Mapper.insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public int updateById(${className}Dto resources){
${className} entity = ConvertUtil.convert(resources, ${className}.class);
int ret = ${changeClassName}Mapper.updateById(entity);
// delCaches(resources.id);
return ret;
}
@Override
@Transactional(rollbackFor = Exception.class)
public int removeByIds(Set<${pkColumnType}> ids){
// delCaches(ids);
return ${changeClassName}Mapper.deleteBatchIds(ids);
}
@Override
@Transactional(rollbackFor = Exception.class)
public int removeById(${pkColumnType} id){
Set<${pkColumnType}> set = new HashSet<>(1);
set.add(id);
return this.removeByIds(set);
}
/*
private void delCaches(${pkColumnType} id) {
redisUtils.delByKey(CACHE_KEY + "::id:", id);
}
private void delCaches(Set<${pkColumnType}> ids) {
for (${pkColumnType} id: ids) {
delCaches(id);
}
}*/
/*
@Override
public void download(List<${className}Dto> all, HttpServletResponse response) throws IOException {
List<Map<String, Object>> list = new ArrayList<>();
for (${className}Dto ${changeClassName} : all) {
Map<String,Object> map = new LinkedHashMap<>();
<#list columns as column>
<#if column.columnKey != 'PRI'>
<#if column.remark != ''>
map.put("${column.remark}", ${changeClassName}.get${column.capitalColumnName}());
<#else>
map.put(" ${column.changeColumnName}", ${changeClassName}.get${column.capitalColumnName}());
</#if>
</#if>
</#list>
list.add(map);
}
FileUtil.downloadExcel(list, response);
}*/
}