Skip to content

Commit da88500

Browse files
吴学文吴学文
authored andcommitted
完成删除权限功能
1 parent 4b001e0 commit da88500

File tree

17 files changed

+363
-3
lines changed

17 files changed

+363
-3
lines changed

OrderService/src/main/java/com/java110/order/api/PrivilegeApi.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,24 @@ public ResponseEntity<String> addStaffPrivilegeOrPrivilegeGroup(@RequestBody Str
157157
}
158158

159159

160+
@RequestMapping(path = "/deleteStaffPrivilegeOrPrivilegeGroup",method= RequestMethod.POST)
161+
@ApiOperation(value="删除用户权限或权限组", notes="test: 返回 200 表示服务受理成功,其他表示失败")
162+
@ApiImplicitParam(paramType="query", name = "privilegeInfo", value = "权限信息", required = true, dataType = "String")
163+
public ResponseEntity<String> deleteStaffPrivilegeOrPrivilegeGroup(@RequestBody String privilegeInfo,HttpServletRequest request){
164+
ResponseEntity<String> responseEntity = null;
165+
166+
try {
167+
responseEntity = privilegeSMOImpl.deleteStaffPrivilegeOrPrivilegeGroup(privilegeInfo);
168+
}catch (Exception e){
169+
logger.error("请求订单异常",e);
170+
responseEntity = new ResponseEntity<String>("请求中心服务发生异常,"+e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR);
171+
}finally {
172+
logger.debug("订单服务返回报文为: {}",responseEntity);
173+
return responseEntity;
174+
}
175+
}
176+
177+
160178

161179
public IPrivilegeSMO getPrivilegeSMOImpl() {
162180
return privilegeSMOImpl;

OrderService/src/main/java/com/java110/order/dao/IPrivilegeDAO.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,4 +74,11 @@ public interface IPrivilegeDAO {
7474
* @return
7575
*/
7676
public boolean addUserPrivilege(Map info);
77+
78+
/**
79+
* 删除用户权限
80+
* @param info
81+
* @return
82+
*/
83+
public boolean deleteUserPrivilege(Map info);
7784
}

OrderService/src/main/java/com/java110/order/dao/impl/PrivilegeDAOImpl.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,5 +158,19 @@ public boolean addUserPrivilege(Map info) {
158158
return true;
159159
}
160160

161+
/**
162+
* 删除用户权限
163+
* @param info
164+
* @return
165+
*/
166+
@Override
167+
public boolean deleteUserPrivilege(Map info) {
168+
int saveFlag = sqlSessionTemplate.insert("privilegeDAOImpl.deleteUserPrivilege",info);
169+
if(saveFlag < 1){
170+
throw new DAOException(ResponseConstant.RESULT_CODE_INNER_ERROR,"删除权限信息失败:"+ JSONObject.toJSONString(info));
171+
}
172+
return true;
173+
}
174+
161175

162176
}

OrderService/src/main/java/com/java110/order/smo/IPrivilegeSMO.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,4 +61,14 @@ public interface IPrivilegeSMO {
6161
*/
6262
public ResponseEntity<String> addStaffPrivilegeOrPrivilegeGroup(String privilegeInfo);
6363

64+
/**
65+
* 删除员工权限
66+
* @param privilegeInfo
67+
* @return
68+
*/
69+
public ResponseEntity<String> deleteStaffPrivilegeOrPrivilegeGroup(String privilegeInfo);
70+
71+
72+
73+
6474
}

OrderService/src/main/java/com/java110/order/smo/impl/PrivilegeSMOImpl.java

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,56 @@ public ResponseEntity<String> addStaffPrivilegeOrPrivilegeGroup(String privilege
203203
return new ResponseEntity<String>("成功", HttpStatus.OK);
204204
}
205205

206+
/**
207+
* 删除员工权限
208+
* @param privilegeInfo
209+
* @return
210+
*/
211+
@Override
212+
public ResponseEntity<String> deleteStaffPrivilegeOrPrivilegeGroup(String privilegeInfo) {
213+
JSONObject privilegeObj = validateDeleteStaffPrivilegeData(privilegeInfo);
214+
//根据权限组ID和商户ID查询是否有数据
215+
String pFlag = privilegeObj.getString("pFlag");//权限组
216+
privilegeObj.put("privilegeFlag","1".equals(pFlag)?"1":"0");
217+
List<Map> privilegeGroups = privilegeDAOImpl.queryUserPrivilege(privilegeObj);
218+
Assert.isNotNull(privilegeGroups, "不存在该权限" + privilegeInfo);
219+
220+
if (!privilegeDAOImpl.deleteUserPrivilege(privilegeObj)) {
221+
return new ResponseEntity<String>("添加权限失败", HttpStatus.INTERNAL_SERVER_ERROR);
222+
}
223+
224+
return new ResponseEntity<String>("成功", HttpStatus.OK);
225+
}
226+
227+
/**
228+
* 数据校验
229+
* @param privilegeInfo
230+
* @return
231+
*/
232+
private JSONObject validateDeleteStaffPrivilegeData(String privilegeInfo) {
233+
234+
Assert.isJsonObject(privilegeInfo, "请求报文不是有效的json格式");
235+
236+
Assert.jsonObjectHaveKey(privilegeInfo, "pId", "请求报文中未包含pId节点");
237+
238+
Assert.jsonObjectHaveKey(privilegeInfo, "pFlag", "请求报文中未包含pFlag节点");
239+
240+
Assert.jsonObjectHaveKey(privilegeInfo, "userId", "请求报文中未包含userId节点");
241+
242+
Assert.jsonObjectHaveKey(privilegeInfo, "storeId", "请求报文中未包含storeId节点");
243+
244+
Assert.jsonObjectHaveKey(privilegeInfo, "storeTypeCd", "请求报文中未包含storeTypeCd节点");
245+
246+
JSONObject privilegeObj = JSONObject.parseObject(privilegeInfo);
247+
String pFlag = privilegeObj.getString("pFlag");//权限组
248+
if("1".equals(pFlag)){
249+
validatePrivilegeGroup(privilegeObj);
250+
return privilegeObj;
251+
}
252+
validatePrivilege(privilegeObj);
253+
return privilegeObj;
254+
}
255+
206256
private JSONObject validateData(String privilegeInfo) {
207257

208258
Assert.isJsonObject(privilegeInfo, "请求报文不是有效的json格式");
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package com.java110.web.components.staff;
2+
3+
4+
import com.java110.core.context.IPageData;
5+
import com.java110.web.smo.IStaffServiceSMO;
6+
import org.springframework.beans.factory.annotation.Autowired;
7+
import org.springframework.http.HttpStatus;
8+
import org.springframework.http.ResponseEntity;
9+
import org.springframework.stereotype.Component;
10+
11+
import java.awt.geom.IllegalPathStateException;
12+
13+
@Component("deleteStaffPrivilege")
14+
public class DeleteStaffPrivilegeComponent {
15+
16+
17+
@Autowired
18+
private IStaffServiceSMO staffServiceSMOImpl;
19+
20+
public ResponseEntity<String> delete(IPageData pd){
21+
22+
ResponseEntity<String> responseEntity = null;
23+
try{
24+
responseEntity = staffServiceSMOImpl.deleteStaffPrivilege(pd);
25+
}catch (Exception e){
26+
responseEntity = new ResponseEntity<String>(e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR);
27+
}finally {
28+
return responseEntity;
29+
}
30+
}
31+
32+
33+
public IStaffServiceSMO getStaffServiceSMOImpl() {
34+
return staffServiceSMOImpl;
35+
}
36+
37+
public void setStaffServiceSMOImpl(IStaffServiceSMO staffServiceSMOImpl) {
38+
this.staffServiceSMOImpl = staffServiceSMOImpl;
39+
}
40+
}

WebService/src/main/java/com/java110/web/smo/IStaffServiceSMO.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,4 +61,11 @@ public interface IStaffServiceSMO {
6161
* @return
6262
*/
6363
public ResponseEntity<String> addStaffPrivilegeOrPrivilegeGroup(IPageData pd);
64+
65+
/**
66+
* 删除权限
67+
* @param pd
68+
* @return
69+
*/
70+
public ResponseEntity<String> deleteStaffPrivilege(IPageData pd);
6471
}

WebService/src/main/java/com/java110/web/smo/impl/StaffServiceSMOImpl.java

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,31 @@ public ResponseEntity<String> addStaffPrivilegeOrPrivilegeGroup(IPageData pd) {
236236
return responseEntity;
237237
}
238238

239+
@Override
240+
public ResponseEntity<String> deleteStaffPrivilege(IPageData pd) {
241+
ResponseEntity<String> responseEntity = null;
242+
Assert.jsonObjectHaveKey(pd.getReqData(),"userId","请求报文格式错误或未包含用户ID信息");
243+
Assert.jsonObjectHaveKey(pd.getReqData(),"pId","请求报文格式错误或未包含权限ID信息");
244+
Assert.jsonObjectHaveKey(pd.getReqData(),"pFlag","请求报文格式错误");
245+
JSONObject _paramObj = JSONObject.parseObject(pd.getReqData());
246+
responseEntity = super.getStoreInfo(pd,restTemplate);
247+
if(responseEntity.getStatusCode() != HttpStatus.OK){
248+
return responseEntity;
249+
}
250+
Assert.jsonObjectHaveKey(responseEntity.getBody().toString(),"storeId","根据用户ID查询商户ID失败,未包含storeId节点");
251+
252+
String storeId = JSONObject.parseObject(responseEntity.getBody().toString()).getString("storeId");
253+
String storeTypeCd = JSONObject.parseObject(responseEntity.getBody().toString()).getString("storeTypeCd");
254+
_paramObj.put("storeId",storeId);
255+
_paramObj.put("storeTypeCd",storeTypeCd);
256+
257+
//修改用户信息
258+
responseEntity = this.callCenterService(restTemplate,pd,_paramObj.toJSONString(),
259+
ServiceConstant.SERVICE_API_URL+"/api/delete.privilege.userPrivilege",
260+
HttpMethod.POST);
261+
262+
return responseEntity; }
263+
239264
/**
240265
* 修改员工 数据校验
241266
* @param pd
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<div class="modal fade" id="deleteStaffPrivilegeModel" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
2+
<div class="modal-dialog" role="document">
3+
<div class="modal-content">
4+
<div class="modal-header">
5+
<h5 class="modal-title" id="exampleModalLabel">请确认您的操作!</h5>
6+
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
7+
<span aria-hidden="true">&times;</span>
8+
</button>
9+
</div>
10+
<div class="modal-body">
11+
<tr align="center"><th>{{deleteStaffPrivilegeInfo.deleteMessage}}</th></tr>
12+
</div>
13+
<div class="modal-footer">
14+
<button type="button" class="btn btn-secondary" data-dismiss="modal" v-on:click="closeDeleteStaffPrivilegeModel()">点错了</button>
15+
<button type="button" class="btn btn-primary" v-on:click="deleteStaffPrivilege()">确认删除</button>
16+
</div>
17+
</div>
18+
</div>
19+
</div>
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
(function(vc,vm){
2+
3+
vc.extends({
4+
data:{
5+
deleteStaffPrivilegeInfo:{
6+
_currentStaffId:'',
7+
_currentPId:'',
8+
_currentPFlag:'',
9+
deleteMessage:'',
10+
}
11+
},
12+
_initMethod:function(){
13+
14+
},
15+
_initEvent:function(){
16+
vc.on('deleteStaffPrivilege','openStaffPrivilegeModel',function(_params){
17+
18+
vc.component.deleteStaffPrivilegeInfo._currentStaffId = _params.staffId;
19+
vc.component.deleteStaffPrivilegeInfo._currentPId = _params._pId;
20+
if(_params.pgId == '-1'){
21+
22+
vc.component.deleteStaffPrivilegeInfo._currentPFlag = '0';
23+
vc.component.deleteStaffPrivilegeInfo.deleteMessage = '确定是否删除当前权限';
24+
}else{
25+
vc.component.deleteStaffPrivilegeInfo._currentPId = _params.pgId;
26+
vc.component.deleteStaffPrivilegeInfo._currentPFlag = '1';
27+
vc.component.deleteStaffPrivilegeInfo.deleteMessage = '您删除是权限组下权限,会删除整个权限组权限,确认是否删除';
28+
29+
}
30+
$('#deleteStaffPrivilegeModel').modal('show');
31+
32+
});
33+
},
34+
methods:{
35+
deleteStaffPrivilege:function(){
36+
var param = {
37+
userId:vc.component.deleteStaffPrivilegeInfo._currentStaffId,
38+
pId:vc.component.deleteStaffPrivilegeInfo._currentPId,
39+
pFlag:vc.component.deleteStaffPrivilegeInfo._currentPFlag,
40+
}
41+
vc.http.post(
42+
'deleteStaffPrivilege',
43+
'delete',
44+
JSON.stringify(vc.component.deleteStaffInfo),
45+
{
46+
emulateJSON:true
47+
},
48+
function(json,res){
49+
//vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
50+
if(res.status == 200){
51+
//关闭model
52+
$('#deleteStaffModel').modal('hide');
53+
vc.component.$emit('deleteStaff_reload_event',{});
54+
return ;
55+
}
56+
vc.component.deleteStaffInfo.errorInfo = json;
57+
},
58+
function(errInfo,error){
59+
console.log('请求失败处理');
60+
61+
vc.component.deleteStaffInfo.errorInfo = errInfo;
62+
});
63+
},
64+
closeDeleteStaffPrivilegeModel:function(){
65+
$('#deleteStaffPrivilegeModel').modal('hide');
66+
}
67+
}
68+
});
69+
70+
})(window.vc,window.vc.component);

0 commit comments

Comments
 (0)