From be5783c8a7e13bbc76d33c95643d75779cce21db Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期六, 18 七月 2026 15:39:05 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_business' into dev_business

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/feedback/MesProFeedbackMapper.java |   42 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 42 insertions(+), 0 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/feedback/MesProFeedbackMapper.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/feedback/MesProFeedbackMapper.java
index 6308ae9..e35fee0 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/feedback/MesProFeedbackMapper.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/feedback/MesProFeedbackMapper.java
@@ -1,11 +1,17 @@
 package cn.iocoder.yudao.module.mes.dal.mysql.pro.feedback;
 
+import cn.hutool.core.util.StrUtil;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
+import cn.iocoder.yudao.framework.mybatis.core.query.MPJLambdaWrapperX;
 import cn.iocoder.yudao.module.mes.controller.admin.pro.feedback.vo.MesProFeedbackPageReqVO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.pro.feedback.MesProFeedbackDO;
+import cn.iocoder.yudao.module.mes.dal.dataobject.pro.task.MesProTaskDO;
 import org.apache.ibatis.annotations.Mapper;
+
+import java.util.Collection;
+import java.util.List;
 
 /**
  * MES 鐢熶骇鎶ュ伐 Mapper
@@ -16,10 +22,31 @@
 public interface MesProFeedbackMapper extends BaseMapperX<MesProFeedbackDO> {
 
     default PageResult<MesProFeedbackDO> selectPage(MesProFeedbackPageReqVO reqVO) {
+        // 褰撴寜浠诲姟缂栫爜妯$硦鏌ヨ鏃讹紝闇�瑕� JOIN 浠诲姟琛�
+        if (StrUtil.isNotBlank(reqVO.getTaskCode())) {
+            MPJLambdaWrapperX<MesProFeedbackDO> query = new MPJLambdaWrapperX<>();
+            query.selectAll(MesProFeedbackDO.class);
+            query.leftJoin(MesProTaskDO.class, on -> on
+                    .eq(MesProTaskDO::getId, MesProFeedbackDO::getTaskId));
+            query.like(MesProTaskDO::getCode, reqVO.getTaskCode());
+            query.likeIfPresent(MesProFeedbackDO::getCode, reqVO.getCode())
+                    .eqIfPresent(MesProFeedbackDO::getType, reqVO.getType())
+                    .eqIfPresent(MesProFeedbackDO::getWorkOrderId, reqVO.getWorkOrderId())
+                    .eqIfPresent(MesProFeedbackDO::getTaskId, reqVO.getTaskId())
+                    .eqIfPresent(MesProFeedbackDO::getStatus, reqVO.getStatus())
+                    .betweenIfPresent(MesProFeedbackDO::getFeedbackTime, reqVO.getFeedbackTime())
+                    .eqIfPresent(MesProFeedbackDO::getItemId, reqVO.getItemId())
+                    .eqIfPresent(MesProFeedbackDO::getFeedbackUserId, reqVO.getFeedbackUserId())
+                    .eqIfPresent(MesProFeedbackDO::getCreator, reqVO.getCreator())
+                    .orderByDesc(MesProFeedbackDO::getId);
+            return selectPage(reqVO, query);
+        }
+        // 涓嶆秹鍙婁换鍔$紪鐮佹煡璇㈡椂锛岃蛋鏅�氭煡璇�
         return selectPage(reqVO, new LambdaQueryWrapperX<MesProFeedbackDO>()
                 .likeIfPresent(MesProFeedbackDO::getCode, reqVO.getCode())
                 .eqIfPresent(MesProFeedbackDO::getType, reqVO.getType())
                 .eqIfPresent(MesProFeedbackDO::getWorkOrderId, reqVO.getWorkOrderId())
+                .eqIfPresent(MesProFeedbackDO::getTaskId, reqVO.getTaskId())
                 .eqIfPresent(MesProFeedbackDO::getStatus, reqVO.getStatus())
                 .betweenIfPresent(MesProFeedbackDO::getFeedbackTime, reqVO.getFeedbackTime())
                 .eqIfPresent(MesProFeedbackDO::getItemId, reqVO.getItemId())
@@ -28,4 +55,19 @@
                 .orderByDesc(MesProFeedbackDO::getId));
     }
 
+    default Long selectCountByTaskId(Long taskId) {
+        return selectCount(MesProFeedbackDO::getTaskId, taskId);
+    }
+
+    default List<MesProFeedbackDO> selectListByTaskId(Long taskId) {
+        return selectList(new LambdaQueryWrapperX<MesProFeedbackDO>()
+                .eq(MesProFeedbackDO::getTaskId, taskId)
+                .orderByDesc(MesProFeedbackDO::getId));
+    }
+
+    default List<MesProFeedbackDO> selectListByTaskIds(Collection<Long> taskIds) {
+        return selectList(new LambdaQueryWrapperX<MesProFeedbackDO>()
+                .in(MesProFeedbackDO::getTaskId, taskIds));
+    }
+
 }

--
Gitblit v1.9.3