Compare commits

..

No commits in common. "fc491bcac044e3991e082d731eaf9acace7f6322" and "e3198da5573c33c851bce983e511997414b398e5" have entirely different histories.

12 changed files with 36 additions and 93 deletions

View File

@ -5,8 +5,7 @@ import com.nflg.qms.admin.service.QmsIssueTicketTodoControllerService;
import com.nflg.wms.common.pojo.ApiResult;
import com.nflg.wms.common.pojo.PageData;
import com.nflg.wms.common.pojo.qo.QmsTodoItemSearchQO;
import com.nflg.wms.common.pojo.vo.IssueTicketTodoNotReadNumVO;
import com.nflg.wms.common.pojo.vo.QmsIssueTicketToDoVO;
import com.nflg.wms.common.pojo.vo.QmsTodoItemVO;
import com.nflg.wms.starter.BaseController;
import jakarta.annotation.Resource;
import jakarta.validation.Valid;
@ -26,16 +25,8 @@ public class QmsIssueTicketTodoController extends BaseController {
* 查询
*/
@PostMapping("search")
public ApiResult<PageData<QmsIssueTicketToDoVO>> search(@Valid @RequestBody QmsTodoItemSearchQO request) {
IPage<QmsIssueTicketToDoVO> page = qmsIssueTicketTodoControllerService.search(request);
public ApiResult<PageData<QmsTodoItemVO>> search(@Valid @RequestBody QmsTodoItemSearchQO request) {
IPage<QmsTodoItemVO> page = qmsIssueTicketTodoControllerService.search(request);
return ApiResult.success(page);
}
/**
* 获取待办数量
*/
@GetMapping("getCount")
public ApiResult<IssueTicketTodoNotReadNumVO> getCount(){
return ApiResult.success(qmsIssueTicketTodoControllerService.getCount());
}
}

View File

@ -4,12 +4,12 @@ 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.IssueTicketTodoNotReadNumVO;
import com.nflg.wms.common.pojo.vo.QmsIssueTicketToDoVO;
import com.nflg.wms.common.util.UserUtil;
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;
import org.springframework.stereotype.Component;
@ -28,11 +28,10 @@ public class QmsIssueTicketTodoControllerService {
/**
* 分页查询待办事项列表
*/
public IPage<QmsIssueTicketToDoVO> search(QmsTodoItemSearchQO request) {
IPage<QmsIssueTicketToDoVO> pageData = issueTicketToDoService.search(request);
public IPage<QmsTodoItemVO> search(QmsTodoItemSearchQO request) {
IPage<QmsTodoItemVO> pageData = issueTicketToDoService.search(request);
if (CollectionUtil.isNotEmpty(pageData.getRecords())) {
pageData.getRecords().forEach(item -> {
item.setIsRead(true);
if (item.getStatus() != 2) {
item.setCurrentHandleUserName(
StrUtil.join(",",
@ -51,8 +50,4 @@ public class QmsIssueTicketTodoControllerService {
}
return pageData;
}
public IssueTicketTodoNotReadNumVO getCount() {
return issueTicketToDoService.getCount(UserUtil.getUserId());
}
}

View File

@ -1,17 +0,0 @@
package com.nflg.wms.common.pojo.vo;
import lombok.Data;
@Data
public class IssueTicketTodoNotReadNumVO {
/**
* 已读数量
*/
private Integer readNum;
/**
* 未读数量
*/
private Integer unreadNum;
}

View File

@ -8,7 +8,7 @@ import java.time.LocalDateTime;
* 待办事项 信息VO
*/
@Data
public class QmsIssueTicketToDoVO {
public class QmsTodoItemVO {
private Long id;
@ -61,9 +61,4 @@ public class QmsIssueTicketToDoVO {
* 类型0=处理主工单1=处理工单子项2=审核工单子项
*/
private Integer type;
/**
* 是否已读
*/
private Boolean isRead;
}

View File

@ -39,9 +39,4 @@ public class QmsIssueTicketToDo implements Serializable {
* 处理人ID
*/
private Long handlerUserId;
/**
* 是否已读
*/
private Boolean isRead;
}

View File

@ -4,8 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nflg.wms.common.pojo.qo.QmsTodoItemSearchQO;
import com.nflg.wms.common.pojo.vo.IssueTicketTodoNotReadNumVO;
import com.nflg.wms.common.pojo.vo.QmsIssueTicketToDoVO;
import com.nflg.wms.common.pojo.vo.QmsTodoItemVO;
import com.nflg.wms.repository.entity.QmsIssueTicketToDo;
/**
@ -13,7 +12,5 @@ import com.nflg.wms.repository.entity.QmsIssueTicketToDo;
*/
public interface QmsIssueTicketToDoMapper extends BaseMapper<QmsIssueTicketToDo> {
IPage<QmsIssueTicketToDoVO> search(QmsTodoItemSearchQO request, Long userId, Page<Object> page);
IssueTicketTodoNotReadNumVO getCount(Long userId);
IPage<QmsTodoItemVO> search(QmsTodoItemSearchQO request, Long userId, Page<Object> page);
}

View File

@ -1,6 +1,10 @@
package com.nflg.wms.repository.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nflg.wms.common.pojo.qo.QmsTodoItemSearchQO;
import com.nflg.wms.common.pojo.vo.QmsTodoItemVO;
import com.nflg.wms.repository.entity.QmsTodoItem;
/**

View File

@ -3,8 +3,7 @@ package com.nflg.wms.repository.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nflg.wms.common.pojo.qo.QmsTodoItemSearchQO;
import com.nflg.wms.common.pojo.vo.IssueTicketTodoNotReadNumVO;
import com.nflg.wms.common.pojo.vo.QmsIssueTicketToDoVO;
import com.nflg.wms.common.pojo.vo.QmsTodoItemVO;
import com.nflg.wms.repository.entity.QmsIssueTicketToDo;
/**
@ -15,9 +14,7 @@ public interface IQmsIssueTicketToDoService extends IService<QmsIssueTicketToDo>
/**
* 分页查询待办事项列表
*/
IPage<QmsIssueTicketToDoVO> search(QmsTodoItemSearchQO request);
IPage<QmsTodoItemVO> search(QmsTodoItemSearchQO request);
void processed(Long id);
IssueTicketTodoNotReadNumVO getCount(Long userId);
}

View File

@ -1,8 +1,13 @@
package com.nflg.wms.repository.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nflg.wms.common.pojo.qo.QmsTodoItemSearchQO;
import com.nflg.wms.common.pojo.vo.QmsTodoItemVO;
import com.nflg.wms.repository.entity.QmsTodoItem;
import java.util.List;
/**
* 待办事项 服务类
*/

View File

@ -1,19 +1,18 @@
package com.nflg.wms.repository.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nflg.wms.common.pojo.qo.QmsTodoItemSearchQO;
import com.nflg.wms.common.pojo.vo.IssueTicketTodoNotReadNumVO;
import com.nflg.wms.common.pojo.vo.QmsIssueTicketToDoVO;
import com.nflg.wms.common.pojo.vo.QmsTodoItemVO;
import com.nflg.wms.common.util.UserUtil;
import com.nflg.wms.repository.entity.QmsIssueTicketToDo;
import com.nflg.wms.repository.entity.QmsTodoItem;
import com.nflg.wms.repository.mapper.QmsIssueTicketToDoMapper;
import com.nflg.wms.repository.service.IQmsIssueTicketToDoService;
import org.springframework.stereotype.Service;
import java.util.List;
import java.time.LocalDateTime;
/**
* 质量问题工单待办 ServiceImpl
@ -24,22 +23,8 @@ public class QmsIssueTicketToDoServiceImpl
implements IQmsIssueTicketToDoService {
@Override
public IPage<QmsIssueTicketToDoVO> search(QmsTodoItemSearchQO request) {
IPage<QmsIssueTicketToDoVO> pageData = baseMapper.search(request, UserUtil.getUserId(), new Page<>(request.getPage(), request.getPageSize()));
if (CollectionUtil.isNotEmpty(pageData.getRecords())) {
List<Long> ticketIds = pageData.getRecords()
.stream()
.filter(todo -> !todo.getIsRead())
.map(QmsIssueTicketToDoVO::getId)
.toList();
if (CollectionUtil.isNotEmpty(ticketIds)) {
lambdaUpdate()
.in(QmsIssueTicketToDo::getTicketId, ticketIds)
.set(QmsIssueTicketToDo::getIsRead, true)
.update();
}
}
return pageData;
public IPage<QmsTodoItemVO> search(QmsTodoItemSearchQO request) {
return baseMapper.search(request, UserUtil.getUserId(), new Page<>(request.getPage(), request.getPageSize()));
}
@Override
@ -51,9 +36,4 @@ public class QmsIssueTicketToDoServiceImpl
.eq(QmsIssueTicketToDo::getHasProcessed, false)
.update();
}
@Override
public IssueTicketTodoNotReadNumVO getCount(Long userId) {
return baseMapper.getCount(userId);
}
}

View File

@ -1,11 +1,19 @@
package com.nflg.wms.repository.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nflg.wms.common.pojo.qo.QmsTodoItemSearchQO;
import com.nflg.wms.common.pojo.vo.QmsTodoItemVO;
import com.nflg.wms.common.util.UserUtil;
import com.nflg.wms.repository.entity.QmsTodoItem;
import com.nflg.wms.repository.mapper.QmsTodoItemMapper;
import com.nflg.wms.repository.service.IQmsTodoItemService;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.List;
/**
* 待办事项 服务实现类
*/

View File

@ -2,14 +2,13 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.nflg.wms.repository.mapper.QmsIssueTicketToDoMapper">
<select id="search" resultType="com.nflg.wms.common.pojo.vo.QmsIssueTicketToDoVO">
<select id="search" resultType="com.nflg.wms.common.pojo.vo.QmsTodoItemVO">
SELECT
CASE
WHEN vit."type" = 0 THEN 0
WHEN vit.handler_user_id = #{userId} THEN 1
WHEN vit.approval_user_id = #{userId} THEN 2
END AS type,
itd.is_read,
vit.*
FROM qms_issue_ticket_todo itd
INNER JOIN v_qms_issue_ticket vit ON itd.ticket_id = vit.ticket_id
@ -32,10 +31,4 @@
ORDER BY itd.id DESC
</select>
<select id="getCount" resultType="com.nflg.wms.common.pojo.vo.IssueTicketTodoNotReadNumVO">
SELECT SUM(CASE is_read WHEN true THEN 1 ELSE 0 END) AS "readNum",
SUM(CASE is_read WHEN true THEN 0 ELSE 1 END) AS "unreadNum"
FROM qms_issue_ticket_todo
WHERE handler_user_id = #{userId}
</select>
</mapper>