Merge branch 'dev' of http://192.168.124.50:3000/wangliwen/share-platform into dev
# Conflicts: # renren-admin/src/main/resources/db/V8.4__tb_fuse_add_col.sql
This commit is contained in:
commit
fbeadb6ba3
|
@ -33,7 +33,11 @@ public class RejectController {
|
|||
@Autowired
|
||||
private SysUserService sysUserService;
|
||||
|
||||
|
||||
/**
|
||||
* @param taskId 驳回到第一节点的当前task
|
||||
* @param params 尝试更新表单
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("relaunch/{taskId}")
|
||||
@ApiOperation("携带更新后的表单重新发起流程")
|
||||
@LogOperation("携带更新后的表单重新发起流程")
|
||||
|
@ -54,7 +58,7 @@ public class RejectController {
|
|||
taskService.removeVariable(task.getId(), "parameterContent");
|
||||
taskService.removeVariable(task.getId(), "resourceDTO");
|
||||
taskService.setVariables(task.getId(), combineResultMap); // 更新
|
||||
logger.error("-----------{}", JSON.toJSONString(combineResultMap));
|
||||
logger.info("携带更新后的表单重新发起流程:{}", JSON.toJSONString(combineResultMap));
|
||||
taskService.setVariable(task.getId(), "backToFirst", Boolean.FALSE); // 标识驳回标签false
|
||||
taskService.setVariable(task.getId(), "completeEntry", Boolean.FALSE); // 标志为非首次录入
|
||||
taskService.setVariable(task.getId(), "reject", Boolean.FALSE); // 标识流程中是否存在拒绝false
|
||||
|
@ -64,7 +68,7 @@ public class RejectController {
|
|||
String name = userDTOOptional.isPresent() ? userDTOOptional.get().getRealName() : "";
|
||||
actTaskService.completeTask(task.getId(), name + "重新发起审核");
|
||||
result.set(new Result().ok(name + "重新发起审核成功"));
|
||||
logger.error("{}重新发起审核成功", name);
|
||||
logger.info("{} 重新发起审核成功", name);
|
||||
});
|
||||
return result.get();
|
||||
}
|
||||
|
|
|
@ -16,6 +16,7 @@ import io.renren.modules.audit_team.service.SysAuditTeamService;
|
|||
import io.renren.modules.security.user.SecurityUser;
|
||||
import io.renren.modules.security.user.UserDetail;
|
||||
import io.renren.modules.sys.dto.SysUserDTO;
|
||||
import io.renren.modules.sys.service.SysRoleUserService;
|
||||
import io.renren.modules.sys.service.SysUserService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
|
@ -29,8 +30,8 @@ import org.activiti.engine.task.TaskQuery;
|
|||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.dao.DataAccessException;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.dao.DataAccessException;
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
@ -73,6 +74,12 @@ public class ActTaskController {
|
|||
@Value("#{new Boolean(${auditteam.enable})}")
|
||||
private Boolean auditteam; // 是否进行审核组
|
||||
|
||||
@Value("${big_date.assignee_meet_role_id}")
|
||||
private String defaultAssigneeRoleId; // 会客厅审核人角色
|
||||
|
||||
@Autowired
|
||||
private SysRoleUserService sysRoleUserService;
|
||||
|
||||
private JdbcTemplate lcJdbcTemplate = JdbcTemplateFactory.getJdbcTemplate();
|
||||
|
||||
/**
|
||||
|
@ -132,34 +139,37 @@ public class ActTaskController {
|
|||
* 当未指定流程类型时 补充一下会客厅的待办
|
||||
*/
|
||||
if (!(params.containsKey("processDefinitionKey") && org.apache.commons.lang3.StringUtils.isNotEmpty(params.get("processDefinitionKey").toString()))) {
|
||||
int meetingroom_book = jdbcTemplate.queryForObject("SELECT COUNT(id) FROM t_meetingroom_book WHERE state = 1;", Integer.class);
|
||||
page.setTotal(page.getTotal() + meetingroom_book);
|
||||
Integer limit = 10;
|
||||
if (params.get(Constant.LIMIT) != null) {
|
||||
limit = Integer.parseInt((String) params.get(Constant.LIMIT));
|
||||
}
|
||||
if (page.getList().size() < limit) {
|
||||
List<Map<String, Object>> meetingroom_bookTask = jdbcTemplate.queryForList("SELECT " +
|
||||
" t_meetingroom_book.id AS `taskId`, " +
|
||||
" t_meetingroom_book.dept AS `userDeptName`, " +
|
||||
" '会客厅' AS `resourceType`, " +
|
||||
" '青岛市大数据发展管理局' AS `provideDept`, " +
|
||||
" t_meetingroom.`name` AS `userName`, " +
|
||||
" '会客厅审核' AS `taskName `, " +
|
||||
" t_meetingroom.create_date AS `createTime` " +
|
||||
"FROM " +
|
||||
" t_meetingroom_book " +
|
||||
" LEFT JOIN t_meetingroom ON t_meetingroom_book.room_id = t_meetingroom.id " +
|
||||
"WHERE " +
|
||||
" state = 1;");
|
||||
List<TaskDTO> meetingroom_bookTaskDto = meetingroom_bookTask
|
||||
.stream().map(index -> {
|
||||
TaskDTO taskDTO = JSON.parseObject(JSON.toJSONString(index), TaskDTO.class);
|
||||
return taskDTO;
|
||||
}).collect(Collectors.toList());
|
||||
List<TaskDTO> temp = page.getList();
|
||||
temp.addAll(meetingroom_bookTaskDto);
|
||||
page.setList(temp);
|
||||
List<Long> useIds = sysRoleUserService.getUserIdListByRoleId(Long.parseLong(defaultAssigneeRoleId));
|
||||
if (useIds.stream().filter(index -> index == SecurityUser.getUserId()).findFirst().isPresent()) { // 拥有会客厅审核权限
|
||||
int meetingroom_book = jdbcTemplate.queryForObject("SELECT COUNT(id) FROM t_meetingroom_book WHERE state = 1;", Integer.class);
|
||||
page.setTotal(page.getTotal() + meetingroom_book);
|
||||
Integer limit = 10;
|
||||
if (params.get(Constant.LIMIT) != null) {
|
||||
limit = Integer.parseInt((String) params.get(Constant.LIMIT));
|
||||
}
|
||||
if (page.getList().size() < limit) {
|
||||
List<Map<String, Object>> meetingroom_bookTask = jdbcTemplate.queryForList("SELECT " +
|
||||
" t_meetingroom_book.id AS `taskId`, " +
|
||||
" t_meetingroom_book.dept AS `userDeptName`, " +
|
||||
" '会客厅' AS `resourceType`, " +
|
||||
" '青岛市大数据发展管理局' AS `provideDept`, " +
|
||||
" t_meetingroom.`name` AS `userName`, " +
|
||||
" '会客厅审核' AS `taskName `, " +
|
||||
" t_meetingroom.create_date AS `createTime` " +
|
||||
"FROM " +
|
||||
" t_meetingroom_book " +
|
||||
" LEFT JOIN t_meetingroom ON t_meetingroom_book.room_id = t_meetingroom.id " +
|
||||
"WHERE " +
|
||||
" state = 1;");
|
||||
List<TaskDTO> meetingroom_bookTaskDto = meetingroom_bookTask
|
||||
.stream().map(index -> {
|
||||
TaskDTO taskDTO = JSON.parseObject(JSON.toJSONString(index), TaskDTO.class);
|
||||
return taskDTO;
|
||||
}).collect(Collectors.toList());
|
||||
List<TaskDTO> temp = page.getList();
|
||||
temp.addAll(meetingroom_bookTaskDto);
|
||||
page.setList(temp);
|
||||
}
|
||||
}
|
||||
}
|
||||
return new Result<PageData<TaskDTO>>().ok(page);
|
||||
|
@ -185,7 +195,7 @@ public class ActTaskController {
|
|||
taskQuery.taskAssignee(SecurityUser.getUserId().toString());
|
||||
taskQuery.active();
|
||||
if (auditteam) { // 允许流程审核协作时
|
||||
List<SysAuditTeamDTO> sysAuditTeamDTOS = sysAuditTeamService.selectByMemberOne(userId);
|
||||
List<SysAuditTeamDTO> sysAuditTeamDTOS = sysAuditTeamService.selectByMemberOne(Long.parseLong(userId));
|
||||
List<String> groupUserId = sysAuditTeamDTOS
|
||||
.stream()
|
||||
.map(index_ -> index_.getMember())
|
||||
|
|
|
@ -19,10 +19,12 @@ import io.renren.modules.resource.dto.ResourceDTO;
|
|||
import io.renren.modules.resource.service.ResourceService;
|
||||
import io.renren.modules.resourceMountApply.dto.TResourceMountApplyDTO;
|
||||
import io.renren.modules.resourceMountApply.service.TResourceMountApplyService;
|
||||
import io.renren.modules.security.user.SecurityUser;
|
||||
import io.renren.modules.sys.dao.SysUserDao;
|
||||
import io.renren.modules.sys.dto.SysDeptDTO;
|
||||
import io.renren.modules.sys.dto.SysUserDTO;
|
||||
import io.renren.modules.sys.service.SysDeptService;
|
||||
import io.renren.modules.sys.service.SysRoleUserService;
|
||||
import io.renren.modules.sys.service.SysUserService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
|
@ -37,6 +39,7 @@ import org.activiti.engine.history.HistoricProcessInstanceQuery;
|
|||
import org.activiti.engine.task.Task;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
@ -89,10 +92,15 @@ public class HistoryController {
|
|||
private SysDeptService sysDeptService;
|
||||
@Autowired
|
||||
private JdbcTemplate jdbcTemplate;
|
||||
@Autowired
|
||||
private SysRoleUserService sysRoleUserService;
|
||||
|
||||
@Autowired
|
||||
private SysUserDao sysUserDao;
|
||||
|
||||
@Value("${big_date.assignee_meet_role_id}")
|
||||
private String defaultAssigneeRoleId; // 会客厅审核人角色
|
||||
|
||||
@GetMapping("getInstImage")
|
||||
@ApiOperation(value = "获取流程活动图", produces = "application/octet-stream")
|
||||
@LogOperation("获取流程活动图")
|
||||
|
@ -132,35 +140,38 @@ public class HistoryController {
|
|||
params.replace("processDefinitionKey", params.get("processDefinitionKey").toString() + "%");
|
||||
}
|
||||
PageData<ProcessActivityDTO> page = activitiService.getMyProcessInstancePage(params);
|
||||
List<Long> useIds = sysRoleUserService.getUserIdListByRoleId(Long.parseLong(defaultAssigneeRoleId));
|
||||
if (!(params.containsKey("processDefinitionKey") && org.apache.commons.lang3.StringUtils.isNotEmpty(params.get("processDefinitionKey").toString()))) {
|
||||
int meetingroom_book = jdbcTemplate.queryForObject("SELECT COUNT(id) FROM t_meetingroom_book WHERE state != 1;", Integer.class);
|
||||
page.setTotal(page.getTotal() + meetingroom_book);
|
||||
Integer limit = 10;
|
||||
if (params.get(Constant.LIMIT) != null) {
|
||||
limit = Integer.parseInt((String) params.get(Constant.LIMIT));
|
||||
}
|
||||
if (page.getList().size() < limit) {
|
||||
List<Map<String, Object>> meetingroom_bookTask = jdbcTemplate.queryForList("SELECT " +
|
||||
" t_meetingroom_book.id AS `businessKey`, " +
|
||||
" t_meetingroom_book.dept AS `startUserDeptName`, " +
|
||||
" '会客厅' AS `resourceName`, " +
|
||||
" '青岛市大数据发展管理局' AS `provideDept`, " +
|
||||
" t_meetingroom.`name` AS `userName`, " +
|
||||
" '会客厅审核' AS `processDefinitionName `, " +
|
||||
" t_meetingroom.create_date AS `startTime` " +
|
||||
"FROM " +
|
||||
" t_meetingroom_book " +
|
||||
" LEFT JOIN t_meetingroom ON t_meetingroom_book.room_id = t_meetingroom.id " +
|
||||
"WHERE " +
|
||||
" state != 1 ;");
|
||||
List<ProcessActivityDTO> meetingroom_bookTaskDto = meetingroom_bookTask
|
||||
.stream().map(index -> {
|
||||
ProcessActivityDTO taskDTO = JSON.parseObject(JSON.toJSONString(index), ProcessActivityDTO.class);
|
||||
return taskDTO;
|
||||
}).collect(Collectors.toList());
|
||||
List<ProcessActivityDTO> temp = page.getList();
|
||||
temp.addAll(meetingroom_bookTaskDto);
|
||||
page.setList(temp);
|
||||
if (useIds.stream().filter(index -> index == SecurityUser.getUserId()).findFirst().isPresent()) { // 拥有会客厅审核权限
|
||||
int meetingroom_book = jdbcTemplate.queryForObject("SELECT COUNT(id) FROM t_meetingroom_book WHERE state != 1;", Integer.class);
|
||||
page.setTotal(page.getTotal() + meetingroom_book);
|
||||
Integer limit = 10;
|
||||
if (params.get(Constant.LIMIT) != null) {
|
||||
limit = Integer.parseInt((String) params.get(Constant.LIMIT));
|
||||
}
|
||||
if (page.getList().size() < limit) {
|
||||
List<Map<String, Object>> meetingroom_bookTask = jdbcTemplate.queryForList("SELECT " +
|
||||
" t_meetingroom_book.id AS `businessKey`, " +
|
||||
" t_meetingroom_book.dept AS `startUserDeptName`, " +
|
||||
" '会客厅' AS `resourceName`, " +
|
||||
" '青岛市大数据发展管理局' AS `provideDept`, " +
|
||||
" t_meetingroom.`name` AS `userName`, " +
|
||||
" '会客厅审核' AS `processDefinitionName `, " +
|
||||
" t_meetingroom.create_date AS `startTime` " +
|
||||
"FROM " +
|
||||
" t_meetingroom_book " +
|
||||
" LEFT JOIN t_meetingroom ON t_meetingroom_book.room_id = t_meetingroom.id " +
|
||||
"WHERE " +
|
||||
" state != 1 ;");
|
||||
List<ProcessActivityDTO> meetingroom_bookTaskDto = meetingroom_bookTask
|
||||
.stream().map(index -> {
|
||||
ProcessActivityDTO taskDTO = JSON.parseObject(JSON.toJSONString(index), ProcessActivityDTO.class);
|
||||
return taskDTO;
|
||||
}).collect(Collectors.toList());
|
||||
List<ProcessActivityDTO> temp = page.getList();
|
||||
temp.addAll(meetingroom_bookTaskDto);
|
||||
page.setList(temp);
|
||||
}
|
||||
}
|
||||
}
|
||||
setExtraProcessProperties(Optional.ofNullable(page.getList()).orElse(new ArrayList<>()));
|
||||
|
|
|
@ -146,11 +146,12 @@ public class ActTaskService extends BaseServiceImpl {
|
|||
List<String> groupUserId = new ArrayList<>();
|
||||
List<SysAuditTeamDTO> sysAuditTeamDTOS = new ArrayList<>();
|
||||
if (auditteam) {
|
||||
sysAuditTeamDTOS = sysAuditTeamService.selectByMemberOne(userId);
|
||||
sysAuditTeamDTOS = sysAuditTeamService.selectByMemberOne(Long.parseLong(userId));
|
||||
groupUserId = sysAuditTeamDTOS
|
||||
.stream()
|
||||
.map(index -> index.getMember())
|
||||
.filter(Objects::nonNull)
|
||||
.filter(index -> !index.isEmpty())
|
||||
.flatMap(index -> index.stream())
|
||||
.map(index -> (String) index.get("id"))
|
||||
.filter(index -> !userId.equals(index)) // 过滤非本人
|
||||
|
|
|
@ -52,7 +52,8 @@ public class SysAuditTeamController {
|
|||
@ApiImplicitParam(name = Constant.PAGE, value = "当前页码,从1开始", paramType = "query", required = true, dataType = "int"),
|
||||
@ApiImplicitParam(name = Constant.LIMIT, value = "每页显示记录数", paramType = "query", required = true, dataType = "int"),
|
||||
@ApiImplicitParam(name = Constant.ORDER_FIELD, value = "排序字段", paramType = "query", dataType = "String"),
|
||||
@ApiImplicitParam(name = Constant.ORDER, value = "排序方式,可选值(asc、desc)", paramType = "query", dataType = "String")
|
||||
@ApiImplicitParam(name = Constant.ORDER, value = "排序方式,可选值(asc、desc)", paramType = "query", dataType = "String"),
|
||||
@ApiImplicitParam(name = "name", value = "根据审核组名称模糊查", paramType = "query", dataType = "String")
|
||||
})
|
||||
// @RequiresPermissions("audit_team:sysauditteam:page")
|
||||
public Result<PageData<SysAuditTeamDTO>> page(@ApiIgnore @RequestParam Map<String, Object> params) {
|
||||
|
@ -80,6 +81,7 @@ public class SysAuditTeamController {
|
|||
dto.setIndex(CommonUtils.getPinYinHeadChar(dto.getName())); // 索引设置为名称拼音
|
||||
dto.setMember(dto.getMember().stream().map(index -> {
|
||||
Optional<SysUserDTO> sysUserDTO = Optional.ofNullable(sysUserService.get(Long.parseLong((String) index.get("id"))));
|
||||
index.put("id", Long.parseLong((String) index.get("id")));
|
||||
if (sysUserDTO.isPresent()) {
|
||||
index.put("name", sysUserDTO.get().getRealName());
|
||||
index.put("dept_name", sysUserDTO.get().getDeptName());
|
||||
|
@ -99,7 +101,8 @@ public class SysAuditTeamController {
|
|||
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
|
||||
dto.setIndex(CommonUtils.getPinYinHeadChar(dto.getName())); // 索引设置为名称拼音
|
||||
dto.setMember(dto.getMember().stream().map(index -> {
|
||||
Optional<SysUserDTO> sysUserDTO = Optional.ofNullable(sysUserService.get((long) index.get("id")));
|
||||
Optional<SysUserDTO> sysUserDTO = Optional.ofNullable(sysUserService.get(Long.parseLong((String) index.get("id"))));
|
||||
index.put("id", Long.parseLong((String) index.get("id")));
|
||||
if (sysUserDTO.isPresent()) {
|
||||
index.put("name", sysUserDTO.get().getRealName());
|
||||
index.put("dept_name", sysUserDTO.get().getDeptName());
|
||||
|
|
|
@ -23,5 +23,5 @@ public interface SysAuditTeamDao extends BaseDao<SysAuditTeamEntity> {
|
|||
* @param member
|
||||
* @return
|
||||
*/
|
||||
List<SysAuditTeamDTO> selectByMemberOne(@Param("member") String member);
|
||||
List<SysAuditTeamDTO> selectByMemberOne(@Param("member") Long member);
|
||||
}
|
|
@ -32,5 +32,7 @@ public class SysAuditTeamDTO implements Serializable {
|
|||
private List<Map> member;
|
||||
@ApiModelProperty(value = "审核组索引")
|
||||
private String index;
|
||||
@ApiModelProperty(value = "审核组备注内容")
|
||||
private String description;
|
||||
|
||||
}
|
|
@ -39,4 +39,9 @@ public class SysAuditTeamEntity extends BaseEntity implements Serializable {
|
|||
*/
|
||||
@TableField(value = "`index`")
|
||||
private String index;
|
||||
|
||||
/**
|
||||
* 审核组备注内容
|
||||
*/
|
||||
private String description;
|
||||
}
|
|
@ -13,5 +13,5 @@ import java.util.List;
|
|||
* @since 1.0 2022-12-12
|
||||
*/
|
||||
public interface SysAuditTeamService extends CrudService<SysAuditTeamEntity, SysAuditTeamDTO> {
|
||||
List<SysAuditTeamDTO> selectByMemberOne(String member);
|
||||
List<SysAuditTeamDTO> selectByMemberOne(Long member);
|
||||
}
|
|
@ -1,6 +1,7 @@
|
|||
package io.renren.modules.audit_team.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||
import io.renren.common.service.impl.CrudServiceImpl;
|
||||
import io.renren.modules.audit_team.dao.SysAuditTeamDao;
|
||||
import io.renren.modules.audit_team.dto.SysAuditTeamDTO;
|
||||
|
@ -23,14 +24,21 @@ public class SysAuditTeamServiceImpl extends CrudServiceImpl<SysAuditTeamDao, Sy
|
|||
@Override
|
||||
public QueryWrapper<SysAuditTeamEntity> getWrapper(Map<String, Object> params) {
|
||||
QueryWrapper<SysAuditTeamEntity> wrapper = new QueryWrapper<>();
|
||||
|
||||
|
||||
params.keySet().stream().filter(index -> null != params.get(index)).forEach(index -> {
|
||||
switch (index) {
|
||||
case "name":
|
||||
wrapper.like(StringUtils.isNotBlank(params.get("name").toString()), "name", params.get("name").toString());
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
});
|
||||
return wrapper;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public List<SysAuditTeamDTO> selectByMemberOne(String member) {
|
||||
public List<SysAuditTeamDTO> selectByMemberOne(Long member) {
|
||||
return baseDao.selectByMemberOne(member);
|
||||
}
|
||||
}
|
|
@ -95,7 +95,7 @@ public class TDemandDataController {
|
|||
|
||||
tDemandDataService.save(dto);
|
||||
|
||||
return new Result();
|
||||
return new Result().ok("保存成功");
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
|
@ -108,7 +108,7 @@ public class TDemandDataController {
|
|||
|
||||
tDemandDataService.update(dto);
|
||||
|
||||
return new Result();
|
||||
return new Result().ok("修改成功");
|
||||
}
|
||||
|
||||
@DeleteMapping
|
||||
|
|
|
@ -43,8 +43,10 @@ public class TDemandDataDTO extends AuditingBaseDTO implements Serializable {
|
|||
private String detailsField;
|
||||
private Long creator;
|
||||
private Date createDate;
|
||||
@ApiModelProperty(value = "附件")
|
||||
@ApiModelProperty(value = "附件名称")
|
||||
private String enclosure;
|
||||
@ApiModelProperty(value = "附件")
|
||||
private String enclosureName;
|
||||
@ApiModelProperty(value = "业务标志(0:初始化 1:审批中 2:审批拒绝 3:审批通过)")
|
||||
private Integer flag;
|
||||
@ApiModelProperty(value = "业务标志提示(0:初始化 1:审批中 2:审批拒绝 3:审批通过)")
|
||||
|
|
|
@ -57,6 +57,11 @@ public class TDemandDataEntity extends BaseEntity {
|
|||
* 附件
|
||||
*/
|
||||
private String enclosure;
|
||||
|
||||
/**
|
||||
* 附件名称
|
||||
*/
|
||||
private String enclosureName;
|
||||
/**
|
||||
* 业务标志(0:初始化 1:审批中 2:审批拒绝 3:审批通过)
|
||||
*/
|
||||
|
|
|
@ -11,17 +11,17 @@ import io.renren.common.validator.ValidatorUtils;
|
|||
import io.renren.common.validator.group.AddGroup;
|
||||
import io.renren.common.validator.group.DefaultGroup;
|
||||
import io.renren.common.validator.group.UpdateGroup;
|
||||
import io.renren.modules.audit_team.dto.SysAuditTeamDTO;
|
||||
import io.renren.modules.audit_team.service.SysAuditTeamService;
|
||||
import io.renren.modules.security.password.PasswordUtils;
|
||||
import io.renren.modules.security.user.SecurityUser;
|
||||
import io.renren.modules.security.user.UserDetail;
|
||||
import io.renren.modules.sys.dto.PasswordDTO;
|
||||
import io.renren.modules.sys.dto.SysDeptDTO;
|
||||
import io.renren.modules.sys.dto.SysRoleDTO;
|
||||
import io.renren.modules.sys.dto.SysUserDTO;
|
||||
import io.renren.modules.sys.excel.SysUserExcel;
|
||||
import io.renren.modules.sys.service.SysDeptService;
|
||||
import io.renren.modules.sys.service.SysRoleUserService;
|
||||
import io.renren.modules.sys.service.SysUserPostService;
|
||||
import io.renren.modules.sys.service.SysUserService;
|
||||
import io.renren.modules.sys.service.*;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiImplicitParams;
|
||||
|
@ -29,13 +29,16 @@ import io.swagger.annotations.ApiOperation;
|
|||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import springfox.documentation.annotations.ApiIgnore;
|
||||
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 用户管理
|
||||
|
@ -54,6 +57,22 @@ public class SysUserController {
|
|||
private SysRoleUserService sysRoleUserService;
|
||||
@Autowired
|
||||
private SysDeptService sysDeptService;
|
||||
@Autowired
|
||||
private SysRoleService sysRoleService;
|
||||
@Autowired
|
||||
private SysAuditTeamService sysAuditTeamService;
|
||||
|
||||
@Value("${big_date.assignee_role_name}")
|
||||
private String roleName0; // 具备审批的角色名称(普通)
|
||||
|
||||
@Value("${big_date.assignee_district_role_name}")
|
||||
private String roleName1; // 具备审批的角色名称(区县)
|
||||
@Value("${big_date.assignee_city_role_name}")
|
||||
private String roleName2; // 具备审批的角色名称(市区)
|
||||
|
||||
@Value("${big_date.assignee_meet_role_id}")
|
||||
private String defaultAssigneeRoleId; // 会客厅审核人角色
|
||||
|
||||
|
||||
@GetMapping("page")
|
||||
@ApiOperation("分页")
|
||||
|
@ -223,4 +242,49 @@ public class SysUserController {
|
|||
public Result getApproverUnconfiguredRegion(@ApiIgnore @RequestParam Map<String, Object> params) {
|
||||
return new Result().ok(sysUserService.getApproverUnconfiguredRegion(params));
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("auditingUserPage")
|
||||
@ApiOperation("审核权限用户分页")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = Constant.PAGE, value = "当前页码,从1开始", paramType = "query", required = true, dataType = "int"),
|
||||
@ApiImplicitParam(name = Constant.LIMIT, value = "每页显示记录数", paramType = "query", required = true, dataType = "int")
|
||||
})
|
||||
// @RequiresPermissions("sys:user:page")
|
||||
public Result<PageData<Map>> auditingUserPage(@ApiIgnore @RequestParam Map<String, Object> params) {
|
||||
//分页参数
|
||||
long curPage = 1;
|
||||
long limit = 10;
|
||||
boolean filterAuditTeam = Boolean.parseBoolean(params.getOrDefault("filter", "false").toString());
|
||||
|
||||
if (params.get(Constant.PAGE) != null) {
|
||||
curPage = Long.parseLong((String) params.get(Constant.PAGE));
|
||||
}
|
||||
if (params.get(Constant.LIMIT) != null) {
|
||||
limit = Long.parseLong((String) params.get(Constant.LIMIT));
|
||||
}
|
||||
SysRoleDTO roleDTO0 = sysRoleService.getByName(roleName0);
|
||||
SysRoleDTO roleDTO1 = sysRoleService.getByName(roleName1);
|
||||
SysRoleDTO roleDTO2 = sysRoleService.getByName(roleName2);
|
||||
List<Long> roleId = new ArrayList() {{
|
||||
if (roleDTO0 != null) {
|
||||
add(roleDTO0.getId());
|
||||
}
|
||||
if (roleDTO1 != null) {
|
||||
add(roleDTO1.getId());
|
||||
}
|
||||
if (roleDTO2 != null) {
|
||||
add(roleDTO2.getId());
|
||||
}
|
||||
add(Long.parseLong(defaultAssigneeRoleId));
|
||||
}};
|
||||
List<Map> temp = sysUserService.getUserByRoleList(roleId, (int) curPage, (int) limit, filterAuditTeam);
|
||||
temp = temp.stream().map(index -> {
|
||||
List<SysAuditTeamDTO> sysAuditTeamDTOList = sysAuditTeamService.selectByMemberOne(Long.parseLong(index.get("id").toString()));
|
||||
index.put("inAuditTeam", !sysAuditTeamDTOList.isEmpty());
|
||||
index.put("auditTeamName", sysAuditTeamDTOList.stream().findFirst().isPresent() ? sysAuditTeamDTOList.stream().findFirst().get().getName() : "");
|
||||
return index;
|
||||
}).collect(Collectors.toList());
|
||||
return new Result<PageData<Map>>().ok(new PageData<>(temp, sysUserService.getUserByRoleListCount(roleId, filterAuditTeam)));
|
||||
}
|
||||
}
|
|
@ -5,7 +5,6 @@ import io.renren.modules.sys.entity.SysUserEntity;
|
|||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
@ -57,4 +56,8 @@ public interface SysUserDao extends BaseDao<SysUserEntity> {
|
|||
Integer getApproverUnconfiguredDepartmentCount();
|
||||
|
||||
Integer getApproverUnconfiguredRegionCount();
|
||||
|
||||
List<Map> getUserByRoleList(@Param("roleIds") List<Long> roleIds, @Param("pageNum") int pageNum, @Param("pageSize") int pageSize, @Param("filter") boolean filter);
|
||||
|
||||
Long getUserByRoleListCount(@Param("roleIds") List<Long> roleIds, @Param("filter") boolean filter);
|
||||
}
|
|
@ -65,4 +65,14 @@ public interface SysUserService extends BaseService<SysUserEntity> {
|
|||
Object getApproverUnconfiguredDepartment(Map<String, Object> params);
|
||||
|
||||
Object getApproverUnconfiguredRegion(Map<String, Object> params);
|
||||
|
||||
/**
|
||||
* 获取拥有
|
||||
*
|
||||
* @param roleIds
|
||||
* @return
|
||||
*/
|
||||
List<Map> getUserByRoleList(List<Long> roleIds, int pageNum, int pageSize, boolean filter);
|
||||
|
||||
Long getUserByRoleListCount(List<Long> roleIds, boolean filter);
|
||||
}
|
||||
|
|
|
@ -555,4 +555,20 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit
|
|||
resultList.addAll(sysUserDao.getApproverUnconfiguredRegion());
|
||||
return resultList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取拥有
|
||||
*
|
||||
* @param roleIds
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map> getUserByRoleList(List<Long> roleIds, int pageNum, int pageSize, boolean filter) {
|
||||
return baseDao.getUserByRoleList(roleIds, (pageNum - 1) * pageSize, pageSize, filter);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Long getUserByRoleListCount(List<Long> roleIds, boolean filter) {
|
||||
return baseDao.getUserByRoleListCount(roleIds, filter);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
ALTER TABLE `t_demand_data` ADD COLUMN `enclosure_name` longtext NULL COMMENT '附件名称' AFTER `apply_number`;
|
|
@ -0,0 +1 @@
|
|||
alter table `sys_audit_team` ADD COLUMN `description` longtext NULL comment '审核组备注信息';
|
|
@ -29,12 +29,20 @@
|
|||
</resultMap>
|
||||
|
||||
<select id="getMyProcessInstancePage" parameterType="map" resultMap="ProcessActivityEntity">
|
||||
SELECT aht.*, arp.NAME_ as DEF_NAME, ahp.BUSINESS_KEY_, ahp.START_TIME_, ahp.END_TIME_,
|
||||
ahp.START_USER_ID_, arp.VERSION_ as DEF_VERSION_
|
||||
FROM (SELECT DISTINCT PROC_DEF_ID_, PROC_INST_ID_,ASSIGNEE_ FROM ACT_HI_TASKINST) aht
|
||||
LEFT JOIN ACT_HI_PROCINST ahp on aht.PROC_INST_ID_ = ahp.PROC_INST_ID_
|
||||
LEFT JOIN ACT_RE_PROCDEF arp on aht.PROC_DEF_ID_ = arp.ID_
|
||||
WHERE aht.ASSIGNEE_ = #{userId}
|
||||
SELECT
|
||||
aht.*,
|
||||
arp.NAME_ AS DEF_NAME,
|
||||
ahp.BUSINESS_KEY_,
|
||||
ahp.START_TIME_,
|
||||
ahp.END_TIME_,
|
||||
ahp.START_USER_ID_,
|
||||
arp.VERSION_ AS DEF_VERSION_
|
||||
FROM
|
||||
( SELECT DISTINCT PROC_DEF_ID_, PROC_INST_ID_, ASSIGNEE_ FROM ACT_HI_TASKINST ) aht
|
||||
LEFT JOIN ACT_HI_PROCINST ahp ON aht.PROC_INST_ID_ = ahp.PROC_INST_ID_
|
||||
LEFT JOIN ACT_RE_PROCDEF arp ON aht.PROC_DEF_ID_ = arp.ID_
|
||||
WHERE
|
||||
aht.ASSIGNEE_ = #{userId}
|
||||
<if test="processInstanceId != null">
|
||||
and aht.PROC_INST_ID_ = #{processInstanceId}
|
||||
</if>
|
||||
|
@ -59,7 +67,7 @@
|
|||
<if test="ended != null">
|
||||
and ahp.END_TIME_ IS NOT NULL
|
||||
</if>
|
||||
ORDER BY
|
||||
ORDER BY
|
||||
ahp.START_TIME_ DESC
|
||||
</select>
|
||||
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
<result property="member" column="member"
|
||||
typeHandler="com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler"/>
|
||||
<result property="index" column="`index`"/>
|
||||
<result property="description" column="description"/>
|
||||
</resultMap>
|
||||
|
||||
<resultMap id="sysAuditTeamDTO" type="io.renren.modules.audit_team.dto.SysAuditTeamDTO">
|
||||
|
@ -21,6 +22,7 @@
|
|||
<result property="member" column="member"
|
||||
typeHandler="com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler"/>
|
||||
<result property="index" column="`index`"/>
|
||||
<result property="description" column="description"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectByMemberOne" resultMap="sysAuditTeamDTO">
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
<result property="approvalUserDeptName" column="approval_user_dept_name"/>
|
||||
<result property="visits" column="visits"/>
|
||||
<result property="applyNumber" column="apply_number"/>
|
||||
<result property="enclosureName" column="enclosure_name" />
|
||||
</resultMap>
|
||||
|
||||
<update id="updateInstanceId">
|
||||
|
|
|
@ -105,67 +105,67 @@
|
|||
|
||||
<select id="getApproverUnconfiguredDepartment" resultType="java.util.Map">
|
||||
SELECT
|
||||
id,
|
||||
name,
|
||||
(CASE type
|
||||
WHEN 1 THEN
|
||||
'省'
|
||||
WHEN 2 THEN
|
||||
'市'
|
||||
WHEN 3 THEN
|
||||
'区'
|
||||
ELSE
|
||||
' '
|
||||
END) AS "type",
|
||||
sort
|
||||
id,
|
||||
name,
|
||||
(CASE type
|
||||
WHEN 1 THEN
|
||||
'省'
|
||||
WHEN 2 THEN
|
||||
'市'
|
||||
WHEN 3 THEN
|
||||
'区'
|
||||
ELSE
|
||||
' '
|
||||
END) AS "type",
|
||||
sort
|
||||
FROM
|
||||
sys_dept sd
|
||||
sys_dept sd
|
||||
WHERE
|
||||
id NOT IN (
|
||||
SELECT
|
||||
sd.id
|
||||
FROM
|
||||
sys_user su,
|
||||
sys_dept sd,
|
||||
sys_role sr,
|
||||
sys_role_user sru
|
||||
WHERE
|
||||
su.dept_id = sd.id
|
||||
AND su.id = sru.user_id
|
||||
AND sru.role_id = sr.id
|
||||
AND sru.del_flag = 0
|
||||
AND sr.`name` = '部门审批人'
|
||||
id NOT IN (
|
||||
SELECT
|
||||
sd.id
|
||||
FROM
|
||||
sys_user su,
|
||||
sys_dept sd,
|
||||
sys_role sr,
|
||||
sys_role_user sru
|
||||
WHERE
|
||||
su.dept_id = sd.id
|
||||
AND su.id = sru.user_id
|
||||
AND sru.role_id = sr.id
|
||||
AND sru.del_flag = 0
|
||||
AND sr.`name` = '部门审批人'
|
||||
)
|
||||
AND sd.type != 4
|
||||
AND sd.type != 4
|
||||
ORDER BY sd.type, sort
|
||||
LIMIT ${pageNum}, ${pageSize}
|
||||
LIMIT ${pageNum}, ${pageSize}
|
||||
</select>
|
||||
|
||||
<select id="getApproverUnconfiguredRegion" resultType="java.util.Map">
|
||||
SELECT
|
||||
id,
|
||||
NAME,
|
||||
sort
|
||||
id,
|
||||
NAME,
|
||||
sort
|
||||
FROM
|
||||
sys_region srg
|
||||
sys_region srg
|
||||
WHERE
|
||||
id NOT IN (
|
||||
SELECT
|
||||
srg.id
|
||||
FROM
|
||||
sys_user su,
|
||||
sys_dept sd,
|
||||
sys_region srg,
|
||||
sys_role sr,
|
||||
sys_role_user sru
|
||||
WHERE
|
||||
su.dept_id = sd.id
|
||||
AND su.id = sru.user_id
|
||||
AND sru.role_id = sr.id
|
||||
AND sd.district = srg.id
|
||||
AND sru.del_flag = 0
|
||||
AND sr.`name` = '区审批人'
|
||||
)
|
||||
id NOT IN (
|
||||
SELECT
|
||||
srg.id
|
||||
FROM
|
||||
sys_user su,
|
||||
sys_dept sd,
|
||||
sys_region srg,
|
||||
sys_role sr,
|
||||
sys_role_user sru
|
||||
WHERE
|
||||
su.dept_id = sd.id
|
||||
AND su.id = sru.user_id
|
||||
AND sru.role_id = sr.id
|
||||
AND sd.district = srg.id
|
||||
AND sru.del_flag = 0
|
||||
AND sr.`name` = '区审批人'
|
||||
)
|
||||
AND srg.tree_level = 3
|
||||
AND 9 >= srg.sort
|
||||
ORDER BY srg.sort
|
||||
|
@ -174,28 +174,148 @@
|
|||
<select id="getApproverUnconfiguredDepartmentCount" resultType="java.lang.Integer">
|
||||
SELECT COUNT(1)
|
||||
FROM (
|
||||
SELECT
|
||||
id
|
||||
FROM
|
||||
sys_dept sd
|
||||
WHERE
|
||||
id NOT IN (
|
||||
SELECT
|
||||
sd.id
|
||||
FROM
|
||||
sys_user su,
|
||||
sys_dept sd,
|
||||
sys_role sr,
|
||||
sys_role_user sru
|
||||
WHERE
|
||||
su.dept_id = sd.id
|
||||
AND su.id = sru.user_id
|
||||
AND sru.role_id = sr.id
|
||||
AND sru.del_flag = 0
|
||||
AND sr.`name` = '部门审批人'
|
||||
)
|
||||
AND sd.type != 4
|
||||
) temp
|
||||
SELECT
|
||||
id
|
||||
FROM
|
||||
sys_dept sd
|
||||
WHERE
|
||||
id NOT IN (
|
||||
SELECT
|
||||
sd.id
|
||||
FROM
|
||||
sys_user su,
|
||||
sys_dept sd,
|
||||
sys_role sr,
|
||||
sys_role_user sru
|
||||
WHERE
|
||||
su.dept_id = sd.id
|
||||
AND su.id = sru.user_id
|
||||
AND sru.role_id = sr.id
|
||||
AND sru.del_flag = 0
|
||||
AND sr.`name` = '部门审批人'
|
||||
)
|
||||
AND sd.type != 4
|
||||
) temp
|
||||
</select>
|
||||
|
||||
<select id="getUserByRoleList" resultType="java.util.Map">
|
||||
<!-- SELECT-->
|
||||
<!-- DISTINCT-->
|
||||
<!-- sys_user.id,-->
|
||||
<!-- sys_user.username,-->
|
||||
<!-- sys_user.real_name,-->
|
||||
<!-- sys_dept.`name`-->
|
||||
<!-- FROM-->
|
||||
<!-- sys_role_user-->
|
||||
<!-- LEFT JOIN sys_user ON sys_user.id = sys_role_user.user_id-->
|
||||
<!-- LEFT JOIN sys_dept ON sys_dept.id = sys_user.dept_id-->
|
||||
<!-- WHERE-->
|
||||
<!-- 1 = 1-->
|
||||
<!-- AND sys_role_user.del_flag = 0-->
|
||||
<!-- AND sys_user.id IS NOT NULL-->
|
||||
<!-- <if test="null != roleIds">-->
|
||||
<!-- AND sys_role_user.role_id IN-->
|
||||
<!-- <foreach item="roleId" collection="roleIds" open="(" separator="," close=")">-->
|
||||
<!-- #{roleId}-->
|
||||
<!-- </foreach>-->
|
||||
<!-- </if>-->
|
||||
<!-- LIMIT ${pageNum}, ${pageSize} -->
|
||||
SELECT
|
||||
temp.*
|
||||
FROM
|
||||
(
|
||||
SELECT DISTINCT
|
||||
sys_user.id,
|
||||
sys_user.username,
|
||||
sys_user.real_name,
|
||||
sys_dept.`name`
|
||||
FROM
|
||||
sys_role_user
|
||||
LEFT JOIN sys_user ON sys_user.id = sys_role_user.user_id
|
||||
LEFT JOIN sys_dept ON sys_dept.id = sys_user.dept_id
|
||||
WHERE
|
||||
1 = 1
|
||||
AND sys_role_user.del_flag = 0
|
||||
<if test="null != roleIds">
|
||||
AND sys_role_user.role_id IN
|
||||
<foreach item="roleId" collection="roleIds" open="(" separator="," close=")">
|
||||
#{roleId}
|
||||
</foreach>
|
||||
</if>
|
||||
AND sys_user.id IS NOT NULL
|
||||
) temp
|
||||
WHERE
|
||||
1 = 1
|
||||
<if test="filter">
|
||||
AND NOT EXISTS (
|
||||
SELECT
|
||||
1
|
||||
FROM
|
||||
sys_audit_team
|
||||
WHERE
|
||||
JSON_CONTAINS(
|
||||
sys_audit_team.member,
|
||||
JSON_OBJECT( "id", temp.id ))
|
||||
)
|
||||
</if>
|
||||
LIMIT ${pageNum}, ${pageSize}
|
||||
</select>
|
||||
<select id="getUserByRoleListCount" resultType="java.lang.Long">
|
||||
<!-- SELECT-->
|
||||
<!-- COUNT(DISTINCT sys_user.id )-->
|
||||
<!-- FROM-->
|
||||
<!-- sys_role_user-->
|
||||
<!-- LEFT JOIN sys_user ON sys_user.id = sys_role_user.user_id-->
|
||||
<!-- LEFT JOIN sys_dept ON sys_dept.id = sys_user.dept_id-->
|
||||
<!-- WHERE-->
|
||||
<!-- 1 = 1-->
|
||||
<!-- AND sys_role_user.del_flag = 0-->
|
||||
<!-- AND sys_user.id IS NOT NULL-->
|
||||
<!-- <if test="null != roleIds">-->
|
||||
<!-- AND sys_role_user.role_id IN-->
|
||||
<!-- <foreach item="roleId" collection="roleIds" open="(" separator="," close=")">-->
|
||||
<!-- #{roleId}-->
|
||||
<!-- </foreach>-->
|
||||
<!-- </if>-->
|
||||
|
||||
SELECT
|
||||
COUNT(temp.id)
|
||||
FROM
|
||||
(
|
||||
SELECT DISTINCT
|
||||
sys_user.id,
|
||||
sys_user.username,
|
||||
sys_user.real_name,
|
||||
sys_dept.`name`
|
||||
FROM
|
||||
sys_role_user
|
||||
LEFT JOIN sys_user ON sys_user.id = sys_role_user.user_id
|
||||
LEFT JOIN sys_dept ON sys_dept.id = sys_user.dept_id
|
||||
WHERE
|
||||
1 = 1
|
||||
AND sys_role_user.del_flag = 0
|
||||
<if test="null != roleIds">
|
||||
AND sys_role_user.role_id IN
|
||||
<foreach item="roleId" collection="roleIds" open="(" separator="," close=")">
|
||||
#{roleId}
|
||||
</foreach>
|
||||
</if>
|
||||
AND sys_user.id IS NOT NULL
|
||||
) temp
|
||||
WHERE
|
||||
1 = 1
|
||||
<if test="filter">
|
||||
AND NOT EXISTS (
|
||||
SELECT
|
||||
1
|
||||
FROM
|
||||
sys_audit_team
|
||||
WHERE
|
||||
JSON_CONTAINS(
|
||||
sys_audit_team.member,
|
||||
JSON_OBJECT( "id", temp.id ))
|
||||
)
|
||||
</if>
|
||||
</select>
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue