# Conflicts:
#	renren-admin/src/main/resources/db/V8.4__tb_fuse_add_col.sql
This commit is contained in:
dinggang 2022-12-14 11:39:51 +08:00
commit fbeadb6ba3
23 changed files with 434 additions and 157 deletions

View File

@ -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();
}

View File

@ -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())

View File

@ -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<>()));

View File

@ -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)) // 过滤非本人

View File

@ -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());

View File

@ -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);
}

View File

@ -32,5 +32,7 @@ public class SysAuditTeamDTO implements Serializable {
private List<Map> member;
@ApiModelProperty(value = "审核组索引")
private String index;
@ApiModelProperty(value = "审核组备注内容")
private String description;
}

View File

@ -39,4 +39,9 @@ public class SysAuditTeamEntity extends BaseEntity implements Serializable {
*/
@TableField(value = "`index`")
private String index;
/**
* 审核组备注内容
*/
private String description;
}

View File

@ -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);
}

View File

@ -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);
}
}

View File

@ -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

View File

@ -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:审批通过)")

View File

@ -57,6 +57,11 @@ public class TDemandDataEntity extends BaseEntity {
* 附件
*/
private String enclosure;
/**
* 附件名称
*/
private String enclosureName;
/**
* 业务标志0:初始化 1:审批中 2:审批拒绝 3:审批通过
*/

View File

@ -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)));
}
}

View File

@ -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);
}

View File

@ -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);
}

View File

@ -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);
}
}

View File

@ -0,0 +1 @@
ALTER TABLE `t_demand_data` ADD COLUMN `enclosure_name` longtext NULL COMMENT '附件名称' AFTER `apply_number`;

View File

@ -0,0 +1 @@
alter table `sys_audit_team` ADD COLUMN `description` longtext NULL comment '审核组备注信息';

View File

@ -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>

View File

@ -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">

View File

@ -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">

View File

@ -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>