feat(issue-ticket): 优化质量问题工单待办列表展示
- 修改控制器注释,明确为质量问题工单待办 - 查询待办事项时关联获取当前未完成工单的所有处理人名称 - 调整SQL查询逻辑,修正关联字段并限制待办视图的访问权限 - QmsTodoItemVO新增ticketId字段,替换currentUserName为currentHandleUserName以更准确表示含义
This commit is contained in:
parent
ebdaa6b888
commit
1651ad5318
|
|
@ -12,7 +12,7 @@ import jakarta.validation.Valid;
|
|||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
/**
|
||||
* 工单待办
|
||||
* 质量问题工单待办
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/ticket-todo-item")
|
||||
|
|
|
|||
|
|
@ -1,8 +1,13 @@
|
|||
package com.nflg.qms.admin.service;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.nflg.wms.common.pojo.qo.QmsTodoItemSearchQO;
|
||||
import com.nflg.wms.common.pojo.vo.QmsTodoItemVO;
|
||||
import com.nflg.wms.repository.entity.QmsIssueTicketProcess;
|
||||
import com.nflg.wms.repository.service.IQmsIssueTicketProcessService;
|
||||
import com.nflg.wms.repository.service.IQmsIssueTicketService;
|
||||
import com.nflg.wms.repository.service.IQmsIssueTicketToDoService;
|
||||
import com.nflg.wms.repository.service.IQmsTodoItemService;
|
||||
import jakarta.annotation.Resource;
|
||||
|
|
@ -17,10 +22,32 @@ public class QmsIssueTicketTodoControllerService {
|
|||
@Resource
|
||||
private IQmsIssueTicketToDoService issueTicketToDoService;
|
||||
|
||||
@Resource
|
||||
private IQmsIssueTicketProcessService issueTicketProcessService;
|
||||
|
||||
/**
|
||||
* 分页查询待办事项列表
|
||||
*/
|
||||
public IPage<QmsTodoItemVO> search(QmsTodoItemSearchQO request) {
|
||||
return issueTicketToDoService.search(request);
|
||||
IPage<QmsTodoItemVO> pageData = issueTicketToDoService.search(request);
|
||||
if (CollectionUtil.isNotEmpty(pageData.getRecords())) {
|
||||
pageData.getRecords().forEach(item -> {
|
||||
if (item.getStatus() != 2) {
|
||||
item.setCurrentHandleUserName(
|
||||
StrUtil.join(",",
|
||||
issueTicketProcessService.lambdaQuery()
|
||||
.select(QmsIssueTicketProcess::getHandlerUserName)
|
||||
.eq(QmsIssueTicketProcess::getIssueTicketId, item.getTicketId())
|
||||
.list()
|
||||
.stream()
|
||||
.map(QmsIssueTicketProcess::getHandlerUserName)
|
||||
.toList()
|
||||
)
|
||||
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
return pageData;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,6 +12,11 @@ public class QmsTodoItemVO {
|
|||
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 工单id
|
||||
*/
|
||||
private Long ticketId;
|
||||
|
||||
/**
|
||||
* 工单编号
|
||||
*/
|
||||
|
|
@ -40,7 +45,7 @@ public class QmsTodoItemVO {
|
|||
/**
|
||||
* 当前节点处理人
|
||||
*/
|
||||
private String currentUserName;
|
||||
private String currentHandleUserName;
|
||||
|
||||
/**
|
||||
* 流程结束时间
|
||||
|
|
|
|||
|
|
@ -11,8 +11,8 @@
|
|||
END AS type,
|
||||
vit.*
|
||||
FROM qms_issue_ticket_todo itd
|
||||
INNER JOIN v_qms_issue_ticket vit ON itd.source_id = vit.ticket_id
|
||||
where itd.handler_user_id = #{userId}
|
||||
INNER JOIN v_qms_issue_ticket vit ON itd.ticket_id = vit.ticket_id
|
||||
where itd.handler_user_id = #{userId} and (vit.handler_user_id=#{userId} or vit.approval_user_id=#{userId})
|
||||
<if test="request.sourceType != null">
|
||||
AND vit.source_type = #{request.sourceType}
|
||||
</if>
|
||||
|
|
|
|||
Loading…
Reference in New Issue