diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/constant/LiquidTankTaskConst.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/constant/LiquidTankTaskConst.java index 0809e9d69..837cb632b 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/constant/LiquidTankTaskConst.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/constant/LiquidTankTaskConst.java @@ -64,6 +64,8 @@ public interface LiquidTankTaskConst { * 状态-已完成,正常结束 */ Integer S_FINISH_OK = 11; + //暂存 + Integer S_TEMP = 12; /** * 首测 diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/LiquidTankTaskController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/LiquidTankTaskController.java index 5b0decf6a..09d7a4caf 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/LiquidTankTaskController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/LiquidTankTaskController.java @@ -427,6 +427,16 @@ public class LiquidTankTaskController extends BladeController { return service.editDrugBat(list); } + /** + * [槽液检测任务] 暂存加药量批量 + */ + @PostMapping("/saveDraftDrugBat") + @ApiOperationSupport(order = 106) + @Operation(summary = "暂存加药量批量", description = "传入LiquidTankTask List,仅保存数据不提交审核") + public R saveDraftDrugBat(@Valid @RequestBody List list) { + return service.saveDraftDrugBat(list); + } + /** * [槽液检测任务] * diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/ILiquidTankTaskService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/ILiquidTankTaskService.java index a549b6ab4..d47f56070 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/ILiquidTankTaskService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/ILiquidTankTaskService.java @@ -48,6 +48,8 @@ public interface ILiquidTankTaskService extends BaseService { R editDrugBat(List list); + R saveDraftDrugBat(List list); + R reviewBat(String ids, Integer reviewPass, String reviewOpinion); R revoke(Long id, String revokeReason); diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/LiquidTankTaskServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/LiquidTankTaskServiceImpl.java index 006985c4c..5494fcad5 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/LiquidTankTaskServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/LiquidTankTaskServiceImpl.java @@ -171,12 +171,28 @@ public class LiquidTankTaskServiceImpl extends BaseServiceImpl list) { + for (LiquidTankTask task : list) { + // 暂存功能:保持状态为待编辑加药量,不提交审核 + task = basicChangeTaskStatus(task, LiquidTankTaskConst.S_TEMP); + basicUpdateById(task); + } + return R.success("暂存成功"); + } + @Transactional @Override public R reviewBat(String ids, Integer reviewPass, String reviewOpinion) { List list = Func.toLongList(ids); for (Long id : list) { LiquidTankTask task = baseMapper.selectById(id); + // 通过id去查这一条槽液任务的实际添加量actualAddValue的值,如果是0的话审核通过之后状态就变为正常完成的,不是0按之前的逻辑走 + if (Objects.nonNull(task.getActualAddValue()) && 0 == task.getActualAddValue()) { + zeroUpdate(task,reviewPass,reviewOpinion); + continue; + } if (Objects.equals(reviewPass, LiquidTankTaskConst.REVIEW_YES)) { // 审核通过 task = basicChangeStatus(task.getId(), LiquidTankTaskConst.S_PENDING_SEND_DRUG); @@ -200,6 +216,28 @@ public class LiquidTankTaskServiceImpl extends BaseServiceImpl