From 2a7fd275313003968fc186ee4617aec4eca90266 Mon Sep 17 00:00:00 2001 From: Junjie <xjj@123> Date: 星期六, 10 五月 2025 16:55:41 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 52 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java index 17077e5..f25de8e 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -2,9 +2,11 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Cools; +import com.core.exception.CoolException; import com.zy.asrs.domain.enums.TaskStatusType; import com.zy.asrs.domain.enums.WorkNoType; import com.zy.asrs.entity.*; +import com.zy.asrs.entity.param.GenerateAgvTaskParam; import com.zy.asrs.entity.param.TaskCreateParam; import com.zy.asrs.service.*; import com.zy.asrs.utils.Utils; @@ -91,4 +93,54 @@ return map; } + @Override + public boolean generateAgvTask(GenerateAgvTaskParam param) { + Date now = new Date(); + String originPoint = param.getOriginPoint(); + String targetPoint = param.getTargetPoint(); + LocMast startLocMast = locMastService.selectByLocNo(originPoint); + if(startLocMast == null){ + throw new CoolException("鍙栬揣鐐瑰簱浣嶄笉瀛樺湪"); + } + + if (!startLocMast.getLocSts().equals("F")) { + throw new CoolException("鍙栬揣鐐逛笉澶勪簬鍦ㄥ簱"); + } + + LocMast targetLocMast = locMastService.selectByLocNo(targetPoint); + if(targetLocMast == null){ + throw new CoolException("鏀捐揣鐐瑰簱浣嶄笉瀛樺湪"); + } + + if (!targetLocMast.getLocSts().equals("O")) { + throw new CoolException("鏀捐揣鐐逛笉澶勪簬绌哄簱"); + } + + TaskWrk taskWrk = new TaskWrk(); + int workNo1 = commonService.getWorkNo(WorkNoType.AGV.type);//鑾峰彇AGV宸ヤ綔鍙� + + taskWrk.setTaskNo(String.valueOf(workNo1));//浠诲姟鍙� + taskWrk.setWrkNo(workNo1); + taskWrk.setStatus(TaskStatusType.RECEIVE.id);//浠诲姟鐘舵�侊細鎺ユ敹 + taskWrk.setCreateTime(now); + taskWrk.setWrkSts(11); + taskWrk.setIoType(4);//AGV鎼繍 + taskWrk.setStartPoint(param.getOriginPoint());//鍙栬揣鐐� + taskWrk.setTargetPoint(param.getTargetPoint());//鏀捐揣鐐� + + boolean insert = taskWrkService.insert(taskWrk); + if (!insert) { + throw new CoolException("浠诲姟鐢熸垚澶辫触"); + } + + startLocMast.setLocSts("R"); + startLocMast.setModiTime(now); + locMastService.updateById(startLocMast); + + targetLocMast.setLocSts("S"); + targetLocMast.setModiTime(now); + locMastService.updateById(targetLocMast); + + return true; + } } -- Gitblit v1.9.1