fix: 初始化穿拔轴将预分配清除

This commit is contained in:
2025-06-09 15:23:21 +08:00
parent 62cfd39fbe
commit f413bfeb82
5 changed files with 46 additions and 3 deletions

View File

@@ -113,4 +113,13 @@ public interface IBstIvtShafttubeivtService extends IService<BstIvtShafttubeivt>
List<BstIvtShafttubeivt> getOtherCBJData(String pointCode, String location);
List<BstIvtShafttubeivt> getNotTaskEmptyShaftCache(String size, String qzz_generation, String location);
/**
* 获取预分配的点位
* @param qzzSize
* @param qzzGen
* @param location
* @return
*/
BstIvtShafttubeivt getNeedInitPoint(String qzzSize, String qzzGen, String location);
}

View File

@@ -50,4 +50,8 @@ public interface BstIvtShafttubeivtMapper extends BaseMapper<BstIvtShafttubeivt>
List<BstIvtShafttubeivt> getNotTaskShaftCache2(@Param("qzzSize") String qzzSize,
@Param("specification") String specification,
@Param("location") String location);
BstIvtShafttubeivt getNeedInitPoint(@Param("qzzSize") String qzzSize,
@Param("specification") String specification,
@Param("location") String location);
}

View File

@@ -98,4 +98,21 @@
AND (b.plan <![CDATA[ <> ]]> '1' OR b.plan IS NULL)
ORDER BY b.sort_seq DESC
</select>
<select id="getNeedInitPoint"
resultType="org.nl.b_lms.bst.ivt.shafttubeivt.service.dao.BstIvtShafttubeivt">
SELECT *
FROM `bst_ivt_shafttubeivt` b
WHERE b.have_qzz = '1'
AND b.point_type = '6'
AND b.qzz_size = #{qzzSize}
<if test="qzzSize != 6">
AND b.qzz_generation = #{specification}
</if>
AND b.point_location = #{location}
AND 0 = (SELECT COUNT(*) FROM sch_base_task t WHERE t.task_status <![CDATA[ < ]]> '07' AND t.point_code1 = b.point_code)
AND b.plan = '1'
AND b.plan IS NOT NULL
ORDER BY b.sort_seq ASC
LIMIT 1
</select>
</mapper>

View File

@@ -159,4 +159,9 @@ public class BstIvtShafttubeivtServiceImpl extends ServiceImpl<BstIvtShafttubeiv
return bstIvtShafttubeivtMapper.getNotTaskEmptyShaftCache(size, qzz_generation, location);
}
@Override
public BstIvtShafttubeivt getNeedInitPoint(String qzzSize, String qzzGen, String location) {
return bstIvtShafttubeivtMapper.getNeedInitPoint( qzzSize, qzzGen, location);
}
}

View File

@@ -314,7 +314,7 @@ public class SlitterServiceImpl implements SlitterService {
.filter(value -> value != null && !value.isEmpty()).collect(Collectors.toList());
if (collect.size() == 0) {
log.error("找不到[{}]对应的分切计划!", deviceCode);
stepTipLogs.add("套轴完成->找不到[" + deviceCode + "]点位记录的分切计划!");
stepTipLogs.add("套轴完成->找不到[" + deviceCode + "]点位记录的分切计划!分切计划可能被删除或者拼接!");
redisUtils.set("ERROR" + deviceCode, stepTipLogs);
throw new BadRequestException("找不到[" + deviceCode + "]对应的分切计划!");
}
@@ -361,7 +361,7 @@ public class SlitterServiceImpl implements SlitterService {
}
}
} else {
stepTipLogs.add("套轴完成->[" + collect + "]对应的分切计划状态已更改,创建任务失败!");
stepTipLogs.add("套轴完成->[" + collect + "]对应的分切计划状态已更改,异常处理位没位置,创建任务失败!");
redisUtils.set("ERROR" + deviceCode, stepTipLogs);
throw new BadRequestException("[" + collect + "]对应的分切计划状态已更改,异常处理位没位置!");
}
@@ -1019,6 +1019,8 @@ public class SlitterServiceImpl implements SlitterService {
if (SlitterConstant.SLITTER_NO.equals(shaftPoint.getHave_qzz())) {
throw new BadRequestException("点位不存在气胀轴信息,无需初始化!");
}
String qzzSize = shaftPoint.getQzz_size();
String qzzGen = shaftPoint.getQzz_generation();
if (SlitterConstant.SLITTER_YES.equals(isAgainTz)) {
//2、把当前点位上子卷号对应的is_paper_ok改为1
List<String> containers = Stream.of(shaftPoint.getContainer_name1(), shaftPoint.getContainer_name2())
@@ -1042,7 +1044,13 @@ public class SlitterServiceImpl implements SlitterService {
shaftPoint.setQzz_size("");
TaskUtils.updateOptMessageByBShaftPoint(shaftPoint);
shafttubeivtService.update(shaftPoint);
// todo: 初始化 预分配点位
// 初始化 预分配点位
BstIvtShafttubeivt shafttubeivt = shafttubeivtService.getNeedInitPoint(qzzSize, qzzGen, shaftPoint.getPoint_location());
if (ObjectUtil.isNotEmpty(shafttubeivt)) {
shafttubeivt.setPlan("");
shafttubeivt.setTube_name1("");
shafttubeivtService.updateById(shafttubeivt);
}
JSONObject res = new JSONObject();
res.put("status", HttpStatus.HTTP_OK);
res.put("message", "请求成功!");