RoleServiceImpl.java
2.01 KB
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
package com.bsth.service.sys.impl;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.bsth.common.ResponseCode;
import com.bsth.entity.sys.Module;
import com.bsth.entity.sys.Role;
import com.bsth.repository.sys.ModuleRepository;
import com.bsth.repository.sys.RoleRepository;
import com.bsth.service.impl.BaseServiceImpl;
import com.bsth.service.sys.RoleService;
@Service
public class RoleServiceImpl extends BaseServiceImpl<Role, Integer> implements
RoleService {
Logger logger = LoggerFactory.getLogger(this.getClass());
@Autowired
RoleRepository roleRepository;
@Autowired
ModuleRepository moduleRepository;
@Override
public Map<String, Object> save(Role t) {
if (t.getId() != null) {
// 更新
Map<String, Object> map = new HashMap<>();
try {
roleRepository.update(t.getCodeName(), t.getRoleName(),
t.isEnable(), t.getDescriptions(), t.getId());
map.put("status", ResponseCode.SUCCESS);
} catch (Exception e) {
map.put("status", ResponseCode.ERROR);
}
return map;
}
return super.save(t);
}
@Override
public Map<String, Object> settRoleModules(Integer roleId, String mIds) {
Map<String, Object> map = new HashMap<>();
try {
Role role = roleRepository.findOne(roleId);
List<Integer> idList = new ArrayList<>();
String[] array = mIds.split(",");
for (String id : array) {
if (null == id || id.trim().equals(""))
continue;
idList.add(Integer.parseInt(id));
}
Set<Module> mList = moduleRepository.findByIds(idList);
role.setModules(mList);
roleRepository.save(role);
map.put("status", ResponseCode.SUCCESS);
} catch (Exception e) {
logger.error("", e);
map.put("status", ResponseCode.ERROR);
}
return map;
}
}