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.*; /** * *
 
 * 描述:通用流程 控制器类
 * 构建组:x7
 * 作者:liyg
 * 邮箱:liygui@jee-soft.cn
 * 日期:2019-03-04 15:23:03
 * 版权:广州宏天软件有限公司
 * 
*/ @RestController @RequestMapping("/bpmModel/BpmOftenFlow/v1") @Api(tags="常用流程设置") @ApiGroup(group= {ApiGroupConsts.GROUP_BPM}) public class BpmOftenFlowController extends BaseController{ @Resource BpmOftenFlowUserDao bpmOftenFlowUserDao; /** * 通用流程列表(分页条件查询)数据 * @return * @throws Exception * PageJson * @exception */ @PostMapping("/list") @ApiOperation(value="通用流程数据列表", httpMethod = "POST", notes = "获取通用流程列表") public PageList list(@ApiParam(name="queryFilter",value="查询对象")@RequestBody QueryFilter queryFilter) throws Exception{ queryFilter.addFilter("USER_ID_", null, QueryOP.IS_NULL); PageList 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 save(@ApiParam(name="map",value="参数", required = true)@RequestBody Map 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 remove(@ApiParam(name="id",value="业务主键", required = true)@PathVariable String id) throws Exception{ baseService.remove(id); return new CommonResult(true, "删除成功"); } /** * 批量删除通用流程记录 * @param ids * @throws Exception * @return * @exception */ @DeleteMapping(value="/removes") @ApiOperation(value = "批量删除通用流程记录", httpMethod = "DELETE", notes = "批量删除通用流程记录") public CommonResult 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 list = Arrays.asList(ids); if(list.size() == 1) { msg = "删除成功"; } return new CommonResult(true, msg); } /** * 通用流程明细页面 * @return * @throws Exception * ModelAndView */ @GetMapping(value="/getMyOftenFlowKey") @ApiOperation(value="根据栏目获取我的常用流程key",httpMethod = "GET",notes = "获取我的常用流程key") public List getMyOftenFlowKey() throws Exception{ return baseService.getMyOftenFlowKey(); } /** * 获取我有权限的常用流程key * @return * @throws Exception * ModelAndView */ @GetMapping(value="/getMyOftenFlowKeyHasAuthority") @ApiOperation(value="获取我有权限的常用流程key",httpMethod = "GET",notes = "获取我有权限的常用流程key") public List getMyOftenFlowKeyHasAuthority() throws Exception{ return baseService.getMyOftenFlowKeyHasAuthority(); } @PostMapping(value="saveMyOftenFlow") @ApiOperation(value = "保存我的常用流程", httpMethod = "POST", notes = "保存我的常用流程") public CommonResult 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("添加通用流程成功"); } @GetMapping(value="resetCurUserOftenFlow") @ApiOperation(value = "重置当前用户的常用流程", httpMethod = "GET", notes = "重置当前用户的常用流程") public CommonResult resetCurUserOftenFlow() throws Exception{ IUser user = ContextUtil.getCurrentUser(); baseService.removeByUserIdAndDefKeys(user.getUserId(), null); return new CommonResult("重置成功"); } }