feat(wms): 新增钢卷告警历史批量处理功能

新增批量处理历史告警接口,支持将今天以前的告警标记为指定状态,前端添加对应操作按钮,可一键处理或忽略历史告警
This commit is contained in:
2026-06-16 17:02:25 +08:00
parent 3b1ce45043
commit b43b44d044
5 changed files with 89 additions and 1 deletions

View File

@@ -128,6 +128,16 @@ public class WmsMaterialWarningController extends BaseController {
return toAjax(iWmsMaterialWarningService.batchHandle(bo));
}
/**
* 批量处理历史告警(标记今天以前的所有记录为指定状态)
*/
@Log(title = "钢卷通用维度告警批量处理历史", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping("/batchHandleHistory")
public R<Void> batchHandleHistory(@Validated @RequestBody WmsMaterialWarningBo bo) {
return toAjax(iWmsMaterialWarningService.batchHandleHistory(bo));
}
/**
* 删除钢卷通用维度告警(长度/厚度/宽度)
*

View File

@@ -54,6 +54,11 @@ public interface IWmsMaterialWarningService {
*/
Boolean batchHandle(WmsMaterialWarningBo bo);
/**
* 批量处理历史告警(标记今天以前的所有记录为指定状态)
*/
Boolean batchHandleHistory(WmsMaterialWarningBo bo);
/**
* 检查钢卷长度/厚度偏差并批量插入告警记录
* 在 calculateTheoretical 计算出理论长度和理论厚度后调用

View File

@@ -174,6 +174,24 @@ public class WmsMaterialWarningServiceImpl implements IWmsMaterialWarningService
return baseMapper.update(null, luw) > 0;
}
/**
* 批量处理历史告警(标记今天以前的所有记录为指定状态)
*/
@Override
public Boolean batchHandleHistory(WmsMaterialWarningBo bo) {
bo.setHandleBy(LoginHelper.getNickName());
bo.setHandleTime(DateUtils.getNowDate());
java.util.Date todayStart = DateUtils.toDate(java.time.LocalDate.now());
LambdaUpdateWrapper<WmsMaterialWarning> luw = Wrappers.lambdaUpdate();
luw.set(WmsMaterialWarning::getWarningStatus, bo.getWarningStatus())
.set(StringUtils.isNotBlank(bo.getHandleBy()), WmsMaterialWarning::getHandleBy, bo.getHandleBy())
.set(bo.getHandleTime() != null, WmsMaterialWarning::getHandleTime, bo.getHandleTime())
.set(StringUtils.isNotBlank(bo.getHandleRemark()), WmsMaterialWarning::getHandleRemark, bo.getHandleRemark())
.lt(WmsMaterialWarning::getCreateTime, todayStart)
.eq(WmsMaterialWarning::getWarningStatus, 0);
return baseMapper.update(null, luw) > 0;
}
/**
* 检查钢卷长度/厚度偏差并批量插入告警记录
*