BpmOftenFlowController.java
6.21 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
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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
package com.hotent.bpmModel.controller;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.hotent.base.annotation.ApiGroup;
import com.hotent.base.constants.ApiGroupConsts;
import com.hotent.base.controller.BaseController;
import com.hotent.base.model.CommonResult;
import com.hotent.base.query.PageBean;
import com.hotent.base.query.PageList;
import com.hotent.base.query.QueryFilter;
import com.hotent.base.query.QueryOP;
import com.hotent.base.util.BeanUtils;
import com.hotent.base.util.StringUtil;
import com.hotent.bpmModel.dao.BpmOftenFlowUserDao;
import com.hotent.bpmModel.manager.BpmOftenFlowManager;
import com.hotent.bpmModel.model.BpmOftenFlow;
import com.hotent.uc.api.impl.util.ContextUtil;
import com.hotent.uc.api.model.IUser;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.*;
/**
*
* <pre>
* 描述:通用流程 控制器类
* 构建组:x7
* 作者:liyg
* 邮箱:liygui@jee-soft.cn
* 日期:2019-03-04 15:23:03
* 版权:广州宏天软件有限公司
* </pre>
*/
@RestController
@RequestMapping("/bpmModel/BpmOftenFlow/v1")
@Api(tags="常用流程设置")
@ApiGroup(group= {ApiGroupConsts.GROUP_BPM})
public class BpmOftenFlowController extends BaseController<BpmOftenFlowManager, BpmOftenFlow>{
@Resource
BpmOftenFlowUserDao bpmOftenFlowUserDao;
/**
* 通用流程列表(分页条件查询)数据
* @return
* @throws Exception
* PageJson
* @exception
*/
@PostMapping("/list")
@ApiOperation(value="通用流程数据列表", httpMethod = "POST", notes = "获取通用流程列表")
public PageList<BpmOftenFlow> list(@ApiParam(name="queryFilter",value="查询对象")@RequestBody QueryFilter<BpmOftenFlow> queryFilter) throws Exception{
queryFilter.addFilter("USER_ID_", null, QueryOP.IS_NULL);
PageList<BpmOftenFlow> query = baseService.query(queryFilter);
return query;
}
/**
* 通用流程明细页面
* @param id
* @return
* @throws Exception
* ModelAndView
*/
@GetMapping(value="/get/{id}")
@ApiOperation(value="通用流程数据详情",httpMethod = "GET",notes = "通用流程数据详情")
public BpmOftenFlow get(@ApiParam(name="id",value="业务对象主键", required = true)@PathVariable String id) throws Exception{
return baseService.get(id);
}
/**
* 新增通用流程
* @param map
* @throws Exception
* @return
* @exception
*/
@PostMapping(value="save")
@ApiOperation(value = "新增,更新通用流程数据", httpMethod = "POST", notes = "新增,更新通用流程数据")
public CommonResult<String> save(@ApiParam(name="map",value="参数", required = true)@RequestBody Map<String,Object> map) throws Exception{
return baseService.saveOrUpdateCommonFlow(map);
}
@GetMapping(value="getBpmOftenFlowUsers")
@ApiOperation(value="通过常用流程ID查询常用流程授权信息",httpMethod = "GET",notes = "通过常用流程ID查询常用流程授权信息")
public String getBpmOftenFlowUsers(@ApiParam(name="oftenFlowId",value="业务对象主键", required = true)@RequestParam String oftenFlowId) throws Exception{
return baseService.getBpmOftenFlowUsers(oftenFlowId);
}
/**
* 删除通用流程记录
* @param id
* @throws Exception
* @return
* @exception
*/
@DeleteMapping(value="remove/{id}")
@ApiOperation(value = "删除通用流程记录", httpMethod = "DELETE", notes = "删除通用流程记录")
public CommonResult<String> remove(@ApiParam(name="id",value="业务主键", required = true)@PathVariable String id) throws Exception{
baseService.remove(id);
return new CommonResult<String>(true, "删除成功");
}
/**
* 批量删除通用流程记录
* @param ids
* @throws Exception
* @return
* @exception
*/
@DeleteMapping(value="/removes")
@ApiOperation(value = "批量删除通用流程记录", httpMethod = "DELETE", notes = "批量删除通用流程记录")
public CommonResult<String> removes(@ApiParam(name="ids",value="业务主键数组,多个业务主键之间用逗号分隔", required = true)@RequestParam String...ids) throws Exception{
String msg = "批量删除成功";
for(String id :ids){
bpmOftenFlowUserDao.removeByOftenFlowId(id);//根据常用流程ID删除授权信息
}
baseService.removeByIds(ids);
List<String> list = Arrays.asList(ids);
if(list.size() == 1) {
msg = "删除成功";
}
return new CommonResult<String>(true, msg);
}
/**
* 通用流程明细页面
* @return
* @throws Exception
* ModelAndView
*/
@GetMapping(value="/getMyOftenFlowKey")
@ApiOperation(value="根据栏目获取我的常用流程key",httpMethod = "GET",notes = "获取我的常用流程key")
public List<String> getMyOftenFlowKey() throws Exception{
return baseService.getMyOftenFlowKey();
}
/**
* 获取我有权限的常用流程key
* @return
* @throws Exception
* ModelAndView
*/
@GetMapping(value="/getMyOftenFlowKeyHasAuthority")
@ApiOperation(value="获取我有权限的常用流程key",httpMethod = "GET",notes = "获取我有权限的常用流程key")
public List<String> getMyOftenFlowKeyHasAuthority() throws Exception{
return baseService.getMyOftenFlowKeyHasAuthority();
}
@PostMapping(value="saveMyOftenFlow")
@ApiOperation(value = "保存我的常用流程", httpMethod = "POST", notes = "保存我的常用流程")
public CommonResult<String> saveMyOftenFlow(@ApiParam(name="list",value="通用流程业务对象", required = true)@RequestBody ArrayNode list) throws Exception{
IUser user = ContextUtil.getCurrentUser();
baseService.saveMyFlow(user.getUserId(), user.getFullname(), list);
return new CommonResult<String>("添加通用流程成功");
}
@GetMapping(value="resetCurUserOftenFlow")
@ApiOperation(value = "重置当前用户的常用流程", httpMethod = "GET", notes = "重置当前用户的常用流程")
public CommonResult<String> resetCurUserOftenFlow() throws Exception{
IUser user = ContextUtil.getCurrentUser();
baseService.removeByUserIdAndDefKeys(user.getUserId(), null);
return new CommonResult<String>("重置成功");
}
}