diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/service/impl/PdmBiSubpackagerelationServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/service/impl/PdmBiSubpackagerelationServiceImpl.java index bfeb43f11..7f443bff0 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/service/impl/PdmBiSubpackagerelationServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/service/impl/PdmBiSubpackagerelationServiceImpl.java @@ -261,10 +261,18 @@ public class PdmBiSubpackagerelationServiceImpl extends ServiceImpl subpackagerelations = this.list(new QueryWrapper().in("workorder_id", workIdList)); if (ObjectUtils.isEmpty(planList)) { throw new BadRequestException("子卷查询不到分切计划,请检查!"); } + Optional any = subpackagerelations.stream() + .filter(sub -> sub.getStatus().equals("0") && StringUtils.isNotEmpty(sub.getPackage_box_sn())) + .findAny(); + if (any.isPresent()){ + PdmBiSubpackagerelation subpackagerelation = any.get(); + throw new BadRequestException(subpackagerelation.getPackage_box_sn()+"包装关系已存在"+subpackagerelation.getPackage_box_sn()+",如重新生成请确认MES跟LMS包装关系已解绑定"); + } + BigDecimal totalWeight; totalWeight = planList.stream() .map(PdmBiSlittingproductionplan::getWeight) @@ -475,17 +483,7 @@ public class PdmBiSubpackagerelationServiceImpl extends ServiceImpl { - try { - log.error("----回传子卷包装关系----"); - String isConnect2 = SpringContextHolder.getBean(SysParamServiceImpl.class).findByCode("IS_CONNECT_MES2").getValue(); - if ("1".equals(isConnect2)) { - transferBoxPackageToMes(false, whereJson, containerNameList, boxSn, weightTotal); - } - } catch (Exception e) { - log.error("子卷装箱异常,transferBoxPackageToMes给MES传输子卷包装关系异常,木箱号为:" + boxSn + ",异常信息:" + e); - } - }, pool); + transferBoxPackageToMes(false, whereJson, containerNameList, boxSn, weightTotal); } /** diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/OutServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/OutServiceImpl.java index 37ffd68dd..a73922fed 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/OutServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/OutServiceImpl.java @@ -4,8 +4,11 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.b_lms.sch.task.dao.SchBaseTask; +import org.nl.b_lms.sch.task.service.IschBaseTaskService; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.WQL; import org.nl.modules.wql.core.bean.WQLObject; @@ -14,10 +17,14 @@ import org.nl.wms.pda.mps.service.OutService; import org.nl.wms.sch.manage.TaskStatusEnum; import org.nl.wms.sch.tasks.CutConveyorTask; import org.nl.wms.sch.tasks.CutTrussTask; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import java.util.HashMap; +import java.util.List; +import java.util.stream.Collectors; @Service @RequiredArgsConstructor @@ -25,6 +32,8 @@ import java.util.HashMap; public class OutServiceImpl implements OutService { private final CutTrussTask cutTrussTask; + @Autowired + private IschBaseTaskService ischBaseTaskService; @Override public JSONObject queryMaterialInfo(JSONObject whereJson) { @@ -211,7 +220,13 @@ public class OutServiceImpl implements OutService { if (ObjectUtil.isEmpty(cut_ivt)) { throw new BadRequestException("未查询到对应的分切机!"); } - + List list = ischBaseTaskService.list(new QueryWrapper() + .eq("point_code1", point_code) + .lt("task_status", TaskStatusEnum.FINISHED.getCode()) + .eq("is_delete", "0")); + if (!CollectionUtils.isEmpty(list)){ + throw new BadRequestException("当前分切机"+point_code+"存在任务,如需继续下卷请先取消任务"+list.stream().map(SchBaseTask::getTask_code).collect(Collectors.joining(","))); + } //查询该分切机邻近位置的空载具的输送线点位 JSONObject empty_vehicle = WQL.getWO("PDA_02") .addParam("sort_seq", cut_ivt.getString("sort_seq"))