fix:废箔下卷时添加分切机任务任务判断
This commit is contained in:
@@ -261,10 +261,18 @@ public class PdmBiSubpackagerelationServiceImpl extends ServiceImpl<PdmBiSubpack
|
||||
.in(PdmBiSlittingproductionplan::getContainer_name, containerNameList)
|
||||
.eq(PdmBiSlittingproductionplan::getIs_delete,IOSEnum.IS_NOTANDYES.code("否"))
|
||||
);
|
||||
|
||||
List<PdmBiSubpackagerelation> subpackagerelations = this.list(new QueryWrapper<PdmBiSubpackagerelation>().in("workorder_id", workIdList));
|
||||
if (ObjectUtils.isEmpty(planList)) {
|
||||
throw new BadRequestException("子卷查询不到分切计划,请检查!");
|
||||
}
|
||||
Optional<PdmBiSubpackagerelation> 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<PdmBiSubpack
|
||||
updateWrapper.in("workorder_id", workIdList);
|
||||
pdmBiSubpackagerelationMapper.update(null, updateWrapper);
|
||||
//给MES传输子卷包装关系
|
||||
CompletableFuture.runAsync(() -> {
|
||||
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);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -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<SchBaseTask> list = ischBaseTaskService.list(new QueryWrapper<SchBaseTask>()
|
||||
.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"))
|
||||
|
||||
Reference in New Issue
Block a user