Merge remote-tracking branch 'origin/0.8.X' into 0.8.X

This commit is contained in:
2026-01-30 17:43:18 +08:00
150 changed files with 5330 additions and 3103 deletions

View File

@@ -108,6 +108,19 @@ public interface IWmsMaterialCoilService {
*/
List<WmsMaterialCoilDeliveryExportVo> queryDeliveryExportList(WmsMaterialCoilBo bo);
/**
* 按“所在库区 + 当前钢卷号”精确查询钢卷质量状态(用于良品/次品口径判定)。
*
* 说明:
* - 仅匹配 data_type=1 且 del_flag=0 的当前有效数据
* - 若匹配不到,返回 null调用方按“忽略不计”处理
*
* @param warehouseId 所在库区IDwms_material_coil.warehouse_id
* @param currentCoilNo 当前钢卷号wms_material_coil.current_coil_no
* @return qualityStatus如 "C+","C","C-","D+","D","D-"),或 null
*/
String queryQualityStatusByWarehouseIdAndCurrentCoilNo(Long warehouseId, String currentCoilNo);
int exportCoil(@NotEmpty(message = "主键不能为空") Long coilId);

View File

@@ -3,7 +3,6 @@ package com.klp.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.esotericsoftware.minlog.Log;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.klp.common.core.domain.entity.SysUser;
import com.klp.common.core.page.TableDataInfo;
@@ -12,11 +11,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.klp.common.exception.ServiceException;
import com.klp.common.helper.LoginHelper;
import com.klp.common.utils.DateUtils;
import com.klp.common.utils.StringUtils;
import com.klp.common.utils.spring.SpringUtils;
import com.klp.domain.*;
import com.klp.domain.bo.*;
import com.klp.domain.vo.*;
@@ -842,6 +839,22 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService {
return list;
}
@Override
public String queryQualityStatusByWarehouseIdAndCurrentCoilNo(Long warehouseId, String currentCoilNo) {
if (warehouseId == null || StringUtils.isBlank(currentCoilNo)) {
return null;
}
LambdaQueryWrapper<WmsMaterialCoil> lqw = Wrappers.lambdaQuery();
lqw.select(WmsMaterialCoil::getQualityStatus);
lqw.eq(WmsMaterialCoil::getDelFlag, 0);
lqw.eq(WmsMaterialCoil::getDataType, 1);
lqw.eq(WmsMaterialCoil::getWarehouseId, warehouseId);
lqw.eq(WmsMaterialCoil::getCurrentCoilNo, currentCoilNo);
lqw.last("LIMIT 1");
WmsMaterialCoil one = baseMapper.selectOne(lqw);
return one == null ? null : one.getQualityStatus();
}
/**
* 从联查结果中构建物品对象(产品或原材料)
* 直接从VO的临时字段中获取数据构建对象避免单独查询数据库