Commit 3a8d00c61eaac93d3d60fbb4caeedaed8961a80e

Authored by lizhuojun
1 parent 63d1e2e4

撤销提交

src/main/java/com/bsth/controller/sys/ResourceController.java
1 1 package com.bsth.controller.sys;
2 2  
3   -import java.util.List;
4 3 import java.util.Map;
5 4  
6   -import com.bsth.security.SecurityMetadataSourceService;
7 5 import org.springframework.beans.factory.annotation.Autowired;
8 6 import org.springframework.web.bind.annotation.RequestMapping;
9 7 import org.springframework.web.bind.annotation.RequestMethod;
... ... @@ -21,22 +19,9 @@ public class ResourceController extends BaseController<Resource, Integer>{
21 19  
22 20 @Autowired
23 21 ResourceService resourceService;
24   -
25   - @Autowired
26   - SecurityMetadataSourceService securityMetadataSourceService;
27 22  
28 23 @RequestMapping(value = "/batch", method = RequestMethod.POST)
29 24 public Map<String, Object> save(@RequestParam String array){
30 25 return resourceService.saveList(JSON.parseArray(array, Resource.class));
31 26 }
32   -
33   - /***
34   - * 查询所有资源信息,如果当前角色id拥有该资源就将原Resource实体类中的enable改为true否则为false
35   - * @param roleId
36   - * @return
37   - */
38   - @RequestMapping(value = "/findResource",method = RequestMethod.GET)
39   - public List<Resource> findResource(Integer roleId){
40   - return resourceService.findResource(roleId);
41   - }
42 27 }
... ...
src/main/java/com/bsth/controller/sys/RoleController.java
... ... @@ -44,17 +44,4 @@ public class RoleController extends BaseController&lt;Role, Integer&gt;{
44 44 public Map<String, Object> roleInfo(@RequestParam Integer id){
45 45 return roleService.roleInfo(id);
46 46 }
47   -
48   - /**
49   - *
50   - * @Title: settRoleModules
51   - * @Description: TODO(为角色设置资源)
52   - * @param @param roleId 角色ID
53   - * @param @param mIds 模块ID字符串(1,2,3,4)
54   - * @throws
55   - */
56   - @RequestMapping(value = "/settResources",method = RequestMethod.POST)
57   - public Map<String, Object> settResources(@RequestParam Integer roleId, @RequestParam String rIds){
58   - return roleService.settRoleResources(roleId,rIds);
59   - }
60 47 }
... ...
src/main/java/com/bsth/repository/sys/ResourceRepository.java
1 1 package com.bsth.repository.sys;
2 2  
3 3 import java.util.List;
4   -import java.util.Set;
5 4  
6   -import org.springframework.data.jpa.domain.Specification;
7   -import org.springframework.data.jpa.repository.Modifying;
8   -import org.springframework.data.jpa.repository.Query;
9   -import org.springframework.data.repository.query.Param;
10 5 import org.springframework.stereotype.Repository;
11 6  
12 7 import com.bsth.entity.sys.Resource;
13 8 import com.bsth.repository.BaseRepository;
14   -import org.springframework.transaction.annotation.Propagation;
15   -import org.springframework.transaction.annotation.Transactional;
16 9  
17 10 @Repository
18 11 public interface ResourceRepository extends BaseRepository<Resource, Integer> {
19 12  
20 13 List<Resource> findByRolesId(Integer roleId);
21   -
22   - /***
23   - * 查询所有资源信息,如果当前角色id拥有该资源就将原Resource实体类中的enable改为true否则为false
24   - * @param roleId 角色id
25   - * @return
26   - */
27   - @Query(value = "select a.id ,a.`name`,a.create_date,a.descriptions,a.method,a.module,a.update_date,a.url,if(b.resources is null,0,1) enable from bsth_c_sys_resource a\n" +
28   - "left join \n" +
29   - "(select resources from bsth_c_sys_resource_roles where roles = ?1) b\n" +
30   - "on a.id = b.resources",nativeQuery = true)
31   - List<Resource> findResource(int roleId);
32 14 }
... ...
src/main/java/com/bsth/service/sys/ResourceService.java
... ... @@ -12,6 +12,4 @@ public interface ResourceService extends BaseService&lt;Resource, Integer&gt; {
12 12  
13 13 List<Resource> findByRolesId(Integer id);
14 14  
15   - List<Resource> findResource(Integer roleId);
16   -
17 15 }
... ...
src/main/java/com/bsth/service/sys/RoleService.java
... ... @@ -8,8 +8,6 @@ import com.bsth.service.BaseService;
8 8 public interface RoleService extends BaseService<Role, Integer>{
9 9  
10 10 Map<String, Object> settRoleModules(Integer roleId, String mIds);
11   -
12   - Map<String, Object> roleInfo(Integer id);
13 11  
14   - Map<String, Object> settRoleResources(Integer roleId, String mIds);
  12 + Map<String, Object> roleInfo(Integer id);
15 13 }
... ...
src/main/java/com/bsth/service/sys/impl/ResourceServiceImpl.java
1 1 package com.bsth.service.sys.impl;
2 2  
3   -import java.util.ArrayList;
4 3 import java.util.HashMap;
5 4 import java.util.List;
6 5 import java.util.Map;
7 6  
8   -import com.bsth.entity.sys.SysUser;
9   -import com.bsth.security.util.SecurityUtils;
10 7 import org.slf4j.Logger;
11 8 import org.slf4j.LoggerFactory;
12 9 import org.springframework.beans.factory.annotation.Autowired;
... ... @@ -43,15 +40,4 @@ public class ResourceServiceImpl extends BaseServiceImpl&lt;Resource, Integer&gt; impl
43 40 public List<Resource> findByRolesId(Integer id) {
44 41 return resourceRepository.findByRolesId(id);
45 42 }
46   -
47   - @Override
48   - public List<Resource> findResource(Integer roleId) {
49   - List<Resource> list = new ArrayList<>();
50   - try{
51   - list = resourceRepository.findResource(roleId);
52   - }catch (Exception e){
53   - logger.error("", e);
54   - }
55   - return list;
56   - }
57 43 }
... ...
src/main/java/com/bsth/service/sys/impl/RoleServiceImpl.java
1 1 package com.bsth.service.sys.impl;
2 2  
3   -import java.sql.PreparedStatement;
4   -import java.sql.SQLException;
5 3 import java.text.SimpleDateFormat;
6   -import java.util.*;
  4 +import java.util.ArrayList;
  5 +import java.util.HashMap;
  6 +import java.util.Iterator;
  7 +import java.util.List;
  8 +import java.util.Map;
  9 +import java.util.Set;
7 10  
8   -import com.bsth.data.BasicData;
9   -import com.bsth.entity.realcontrol.ScheduleRealInfo;
10   -import com.bsth.entity.sys.Resource;
11   -import com.bsth.repository.sys.ResourceRepository;
12   -import com.bsth.security.SecurityMetadataSourceService;
13 11 import org.slf4j.Logger;
14 12 import org.slf4j.LoggerFactory;
15 13 import org.springframework.beans.factory.annotation.Autowired;
16   -import org.springframework.jdbc.core.BatchPreparedStatementSetter;
17   -import org.springframework.jdbc.core.JdbcTemplate;
18   -import org.springframework.jdbc.datasource.DataSourceTransactionManager;
19   -import org.springframework.orm.jpa.JpaTransactionManager;
20 14 import org.springframework.stereotype.Service;
21 15  
22 16 import com.bsth.common.ResponseCode;
... ... @@ -27,11 +21,6 @@ import com.bsth.repository.sys.ModuleRepository;
27 21 import com.bsth.repository.sys.RoleRepository;
28 22 import com.bsth.service.impl.BaseServiceImpl;
29 23 import com.bsth.service.sys.RoleService;
30   -import org.springframework.transaction.TransactionDefinition;
31   -import org.springframework.transaction.TransactionStatus;
32   -import org.springframework.transaction.annotation.Propagation;
33   -import org.springframework.transaction.annotation.Transactional;
34   -import org.springframework.transaction.support.DefaultTransactionDefinition;
35 24  
36 25 @Service
37 26 public class RoleServiceImpl extends BaseServiceImpl<Role, Integer> implements
... ... @@ -45,15 +34,6 @@ public class RoleServiceImpl extends BaseServiceImpl&lt;Role, Integer&gt; implements
45 34 @Autowired
46 35 ModuleRepository moduleRepository;
47 36  
48   - @Autowired
49   - ResourceRepository resourceRepository;
50   -
51   - @Autowired
52   - SecurityMetadataSourceService securityMetadataSourceService;
53   -
54   - @Autowired
55   - JdbcTemplate jdbcTemplate;
56   -
57 37 SimpleDateFormat sdfMinute = new SimpleDateFormat("yyyy-MM-dd HH:mm");
58 38  
59 39 @Override
... ... @@ -123,39 +103,4 @@ public class RoleServiceImpl extends BaseServiceImpl&lt;Role, Integer&gt; implements
123 103 map.put("userNames", userNames);
124 104 return map;
125 105 }
126   -
127   - @Override
128   - public Map<String, Object> settRoleResources(Integer roleId, String rIds){
129   - Map<String, Object> map = new HashMap<>();
130   - DataSourceTransactionManager tran = new DataSourceTransactionManager(jdbcTemplate.getDataSource());
131   - DefaultTransactionDefinition def = new DefaultTransactionDefinition();
132   - def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED);
133   - TransactionStatus status = tran.getTransaction(def);
134   - String[] ids = rIds.split(",");
135   - try{
136   - jdbcTemplate.update("delete from bsth_c_sys_resource_roles where roles = ?", roleId);
137   - jdbcTemplate.batchUpdate("insert into bsth_c_sys_resource_roles(resources,roles)" +
138   - " VALUES (?, ?)", new BatchPreparedStatementSetter() {
139   - @Override
140   - public void setValues(PreparedStatement ps, int i) throws SQLException {
141   - ps.setInt(1, Integer.parseInt(ids[i]));
142   - ps.setInt(2, roleId);
143   - }
144   -
145   - @Override
146   - public int getBatchSize() {
147   - return ids.length;
148   - }
149   - });
150   - tran.commit(status);
151   - //重新加载security资源
152   - securityMetadataSourceService.loadResourceDefine();
153   - map.put("status", ResponseCode.SUCCESS);
154   - }catch (Exception e){
155   - tran.rollback(status);
156   - logger.error("【RoleServiceImpl】【settRoleResources】 : ", e);
157   - map.put("status", ResponseCode.ERROR);
158   - }
159   - return map;
160   - }
161   -}
162 106 \ No newline at end of file
  107 +}
... ...
src/main/resources/static/assets/js/common.js
... ... @@ -57,10 +57,7 @@ function ajaxComplete(xhr, ts, succ){
57 57 successHandle(JSON.parse(xhr.responseText), succ);
58 58 }
59 59 else if(ts == 'error'){
60   - layer.alert(xhr.responseText + '<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span id="goIndex" style="color: #ff1f08;font-weight: bold;font-size: large;">1</span> 秒后回到首页', {icon: 2, title: '操作失败'});
61   - setTimeout(function(){
62   - window.location.href = '/';
63   - },1500)
  60 + layer.alert(xhr.responseText, {icon: 2, title: '操作失败'});
64 61 }
65 62 }
66 63  
... ...
src/main/resources/static/pages/permission/resource/list.html
... ... @@ -165,17 +165,16 @@ $(function(){
165 165 var options = '<option value="">请选择...</option>';
166 166 $.each(treeData, function(i, g){
167 167 var dArray = g.children;
168   - if(dArray){
169   - for(var i = 0,d; d = dArray[i++];){
170   - options += '<optgroup label="'+d.name+'">';
171   - if(!d.children)
172   - continue;
173 168  
174   - $.each(d.children, function(i, m){
175   - options += '<option value="'+m.id+'">'+m.name+'</option>'
176   - });
177   - options += '</optgroup>';
178   - }
  169 + for(var i = 0,d; d = dArray[i++];){
  170 + options += '<optgroup label="'+d.name+'">';
  171 + if(!d.children)
  172 + continue;
  173 +
  174 + $.each(d.children, function(i, m){
  175 + options += '<option value="'+m.id+'">'+m.name+'</option>'
  176 + });
  177 + options += '</optgroup>';
179 178 }
180 179 });
181 180 $('#moduleSelect').html(options)/* .select2() */;
... ...
src/main/resources/static/pages/permission/role/list.html
... ... @@ -67,7 +67,7 @@
67 67 style="display: inline-block; margin-right: 5px;"> <i
68 68 class="fa fa-meh-o"> </i> 模块配置
69 69 </a>
70   - <a href="resourcesSetting.html?no={{role.id}}" class=" font-blue "
  70 + <a href="javascript:;" class=" font-blue "
71 71 style="display: inline-block;color: #aaaaaa !important;" > <i class="fa fa-key">
72 72 </i> 系统资源权限
73 73 </a>
... ...
src/main/resources/static/pages/permission/role/resourcesSetting.html deleted 100644 → 0
1   -<div class="page-head">
2   - <div class="page-title">
3   - <h1>分配资源</h1>
4   - </div>
5   -</div>
6   -
7   -<ul class="page-breadcrumb breadcrumb">
8   - <li><a href="/pages/home.html" data-pjax>首页</a> <i
9   - class="fa fa-circle"></i></li>
10   - <li><span class="active">权限管理</span> <i class="fa fa-circle"></i></li>
11   - <li><a href="list.html" data-pjax>角色管理</a> <i class="fa fa-circle"></i></li>
12   - <li><span class="active">分配资源</span></li>
13   -</ul>
14   -<br><br>
15   -<div class="row">
16   - <div class="col-lg-4 col-md-5 col-sm-5 col-md-offset-1">
17   - <!-- BEGIN PORTLET-->
18   - <div class="portlet light bordered">
19   - <div class="portlet-title">
20   - <div class="caption">
21   - <i class="icon-bar-chart font-green"></i>
22   - <span class="caption-subject font-green bold uppercase">角色信息</span>
23   - <span class="caption-helper">更新于 2016-03-29 16:40</span>
24   - </div>
25   - </div>
26   - <div class="portlet-body">
27   - <div class="mt-element-list">
28   - <div class="mt-list-container list-simple" style="border: none;">
29   - </div>
30   - </div>
31   - </div>
32   - </div>
33   - <!-- END PORTLET-->
34   - </div>
35   - <script id="role_detail_temp" type="text/html">
36   - <ul>
37   - <li class="mt-list-item" style="border-bottom:none;">
38   - <div class="list-item-content" >
39   - <h5 class="uppercase">
40   - <span><i class="fa fa-code"></i> 角色代码:{{codeName}}</span>
41   - </h5>
42   - </div>
43   - </li>
44   - <li class="mt-list-item" style="border-bottom:none;">
45   - <div class="list-item-content">
46   - <h5 class="uppercase">
47   - <span><i class="fa fa-user"></i> 角色名称:{{roleName}}</span>
48   - </h5>
49   - </div>
50   - </li>
51   - <li class="mt-list-item" style="border-bottom:none;">
52   - <div class="list-item-content">
53   - <h5 class="uppercase">
54   - <span><i class="fa fa-clock-o"></i> 创建时间:{{createDate}}</span>
55   - </h5>
56   - </div>
57   - </li>
58   - <li class="mt-list-item" style="border-bottom:none;">
59   - <div class="list-item-content">
60   - <h5 class="uppercase">
61   - <span><i class="fa fa-check-circle"></i> 状态:
62   - {{if enable == 1}}
63   - 可用
64   - {{else}}
65   - 禁用
66   - {{/if}}
67   - </span>
68   - </h5>
69   - </div>
70   - </li>
71   - <li class="mt-list-item" style="border-bottom:none;">
72   - <div class="list-item-content">
73   - <h5 class="uppercase">
74   - <span><i class="fa fa-columns"></i> 模块数:{{modules}}</span>
75   - </h5>
76   - </div>
77   - </li>
78   - <li class="mt-list-item" style="border-bottom:none;">
79   - <div class="list-item-content">
80   - <h5 class="uppercase">
81   - <span><i class="fa fa-users"></i> 用户:{{userNames}}</span>
82   - </h5>
83   - </div>
84   - </li>
85   - <li class="mt-list-item" style="border-bottom:none;">
86   - <div class="list-item-content">
87   - <h5 class="uppercase">
88   - <span><i class="fa fa-ambulance"></i> 资源数:{{resources}}</span>
89   - </h5>
90   - </div>
91   - </li>
92   - <li class="mt-list-item" style="border-bottom:none;">
93   - <div class="list-item-content">
94   - <h5 class="uppercase">
95   - <span><i class="fa fa-text-width"></i> 描述:{{descriptions}}</span>
96   - </h5>
97   - </div>
98   - </li>
99   - </ul>
100   - </script>
101   -
102   - <div style="display: inline-block;">
103   - <!-- BEGIN PORTLET-->
104   - <div class="portlet light bordered">
105   - <div class="portlet-title">
106   - <div class="caption">
107   - <i class="icon-bar-chart font-green"></i>
108   - <span class="caption-subject font-green bold uppercase">分配资源</span>
109   - </div>
110   - <div class="actions">
111   - <button class="btn green btn-circle btn-sm" disabled="disabled" id="saveResourceSett"><i class="fa fa-check"></i> 保存修改</button>
112   - <a href="list.html" data-pjax class="btn grey btn-circle btn-sm"><i class="fa fa-reply"></i> 返回</a>
113   - </div>
114   - </div>
115   - <div class="portlet-body">
116   - <div class="form-group last" >
117   - <div>
118   - <select multiple="multiple" class="multi-select" id="resourceSettSelect" ></select>
119   - </div>
120   - </div>
121   - </div>
122   - </div>
123   - </div>
124   -</div>
125   -<script>
126   - var id = $.url().param('no')
127   - ,roleObj;
128   -
129   - if(!id){
130   - alert('缺少主键');
131   - }
132   - else{
133   - $get('/role/roleInfo' ,{id:id}, function(obj){
134   - $('.caption-helper').text(obj.updateDate);
135   - var htmlStr = template('role_detail_temp', obj);
136   - $('.mt-list-container').html(htmlStr);
137   - });
138   - $get('/role/' + id ,null, function(obj){
139   - roleObj = obj;
140   - });
141   - }
142   -
143   - $("#saveResourceSett").on('click',function(){
144   - if($(this).attr('disabled'))
145   - return;
146   -
147   - var ids = [];
148   - $.each($('#resourceSettSelect').val(), function(i, rId){
149   - ids.push(rId);
150   - });
151   -
152   - if(roleObj){
153   - $post('/role/settResources', {roleId: roleObj.id,rIds: ids.join(',')}, function(){
154   - layer.msg('修改成功!');
155   - });
156   - }
157   - })
158   -
159   - //资源下拉框
160   - getResourceTreeData(function(treeData){
161   - var options = '';
162   - for(var i = 0; i < treeData.length; i++){
163   - //是否被当前角色持有
164   - var selected = '';
165   - if(treeData[i].enable){
166   - selected = 'selected';
167   - }
168   - options += '<option value="'+treeData[i].id+'" '+selected+'>'+treeData[i].name+'</option>'
169   - }
170   - //初始化multiSelect
171   - $('#resourceSettSelect').html(options).multiSelect({
172   - selectableOptgroup: false,
173   - selectableHeader: "<div class='multi-custom-header-left'>未分配</div>",
174   - selectionHeader: "<div class='multi-custom-header-right'>已分配</div>",
175   - }).on('change',function(){
176   - if($(this).val() != null)
177   - $('#saveResourceSett').removeAttr('disabled');
178   - else
179   - $('#saveResourceSett').attr('disabled', 'disabled');
180   - });
181   - });
182   -
183   - function getResourceTreeData(cb){
184   - $get('/resource/findResource',{roleId:id}, function(arr){
185   - cb && cb(arr)
186   - });
187   - }
188   -</script>
189 0 \ No newline at end of file