chenrui
2025-04-09 73f262d6a15a925ea8f0af1351b907255a4735b5
成品下单查询拼接检验人
已修改3个文件
已添加1个文件
61 ■■■■■ 文件已修改
inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductMapper.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/pojo/CheckUserDto.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/resources/mapper/InsProductMapper.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductMapper.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.inspect.dto.ProductResultDto2;
import com.ruoyi.inspect.dto.SampleProductRawAnalysisDto;
import com.ruoyi.inspect.pojo.CheckUserDto;
import com.ruoyi.inspect.pojo.InsProduct;
import org.apache.ibatis.annotations.Param;
@@ -76,6 +77,14 @@
     * @return
     */
    int batchUpdateInsProductCheckUserId(@Param("insProductIds") List <Integer> insProductIds, @Param("checkUserId") Integer userId);
    /**
     * æ ¹æ®è®¢å•id查询检验人员
     *
     * @param orderIds
     * @return
     */
    List<CheckUserDto> selectCheckUserNameByOrderIds(@Param("orderIds") List<Integer> orderIds);
}
inspect-server/src/main/java/com/ruoyi/inspect/pojo/CheckUserDto.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,11 @@
package com.ruoyi.inspect.pojo;
import lombok.Data;
@Data
public class CheckUserDto {
    private Integer orderId;
    private String checkUserNames;
}
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java
@@ -105,7 +105,26 @@
        otherParam.setIsOrderAll(isOrderAll);
        otherParam.setCheckUserFlag(checkUserFlag);
        otherParam.setCheckUserId(SecurityUtils.getUserId());
        return insOrderMapper.selectInsOrderPage(page, QueryWrappers.queryWrappers(sampleOrderDto), otherParam);
        IPage<SampleOrderDto> sampleOrderDtoIPage = insOrderMapper.selectInsOrderPage(page, QueryWrappers.queryWrappers(sampleOrderDto), otherParam);
        // æ‹¼æŽ¥æ£€éªŒäººæ ¹æ®æ£€éªŒé¡¹æ¥
        if(CollectionUtils.isEmpty(sampleOrderDtoIPage.getRecords())){
            return sampleOrderDtoIPage;
        }
        List<Integer> orderIds = new ArrayList<>();
        for (SampleOrderDto record : sampleOrderDtoIPage.getRecords()) {
            orderIds.add(record.getId());
        }
        List<CheckUserDto> checkUserDtoList = insProductMapper.selectCheckUserNameByOrderIds(orderIds);
        for (SampleOrderDto record : sampleOrderDtoIPage.getRecords()) {
            Integer orderId = record.getId();
            for (CheckUserDto checkUserDto : checkUserDtoList) {
                if(orderId.equals(checkUserDto.getOrderId())) {
                    record.setTestingName(checkUserDto.getCheckUserNames());
                    break;
                }
            }
        }
        return sampleOrderDtoIPage;
    }
inspect-server/src/main/resources/mapper/InsProductMapper.xml
@@ -157,4 +157,24 @@
            #{item}
        </foreach>
    </update>
    <select id="selectCheckUserNameByOrderIds" resultType="com.ruoyi.inspect.pojo.CheckUserDto">
        SELECT T1.id AS order_id,
               GROUP_CONCAT(DISTINCT user.name SEPARATOR ', ') AS check_user_names
        FROM (
              SELECT
                  ipr.check_user_id,
                  iso.id
              FROM
                  ins_product ipr
                      LEFT JOIN ins_sample isa ON ipr.ins_sample_id = isa.id
                      LEFT JOIN ins_order iso ON isa.ins_order_id = iso.id
              WHERE
                  iso.id IN
                  <foreach collection="orderIds" open="(" close=")" item="item" separator=",">
                      #{item}
                  </foreach>
        ) T1 LEFT JOIN user ON T1.check_user_id = user.id
        GROUP BY T1.id
    </select>
</mapper>