cl
7 天以前 0ef61a347d951f75089bc36019defe03cf197bc7
#上报 过滤
1个文件已修改
19 ■■■■ 已修改文件
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/CusBarcodeSyncViewQueryService.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/CusBarcodeSyncViewQueryService.java
@@ -1,5 +1,6 @@
package com.vincent.rsf.server.manager.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -104,8 +105,7 @@
            return Collections.emptyList();
        }
        List<CusBarcodeSyncView> rows = cusBarcodeSyncViewMapper.selectList(
                Wrappers.<CusBarcodeSyncView>lambdaQuery()
                        .in(CusBarcodeSyncView::getBarcode, codes)
                buildBarcodeOrQuery(codes)
                        .select(
                                CusBarcodeSyncView::getBarcode,
                                CusBarcodeSyncView::getItemName,
@@ -114,6 +114,21 @@
        return toViewMaps(rows);
    }
    private LambdaQueryWrapper<CusBarcodeSyncView> buildBarcodeOrQuery(List<String> codes) {
        LambdaQueryWrapper<CusBarcodeSyncView> wrapper = Wrappers.lambdaQuery();
        wrapper.and(q -> {
            for (int i = 0; i < codes.size(); i++) {
                String code = codes.get(i);
                if (i == 0) {
                    q.eq(CusBarcodeSyncView::getBarcode, code);
                } else {
                    q.or().eq(CusBarcodeSyncView::getBarcode, code);
                }
            }
        });
        return wrapper;
    }
    private List<Map<String, Object>> toViewMaps(List<CusBarcodeSyncView> rows) {
        if (rows == null || rows.isEmpty()) {
            return Collections.emptyList();