zy-acs-flow/src/i18n/en.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-acs-flow/src/i18n/zh.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-acs-flow/src/map/http.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-acs-flow/src/map/insight/agv/AgvMain.jsx | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-acs-manager/src/main/java/com/zy/acs/manager/core/HandlerController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
zy-acs-flow/src/i18n/en.js
@@ -646,6 +646,7 @@ disable: 'DISABLE', enable: 'ENABLE', reset: 'RESET', restoreALl: 'Restore All', }, mode: { observer: 'OBSERVER', zy-acs-flow/src/i18n/zh.js
@@ -645,6 +645,7 @@ disable: '禁用', enable: '启用', reset: '重置', restoreALl: '恢复所有', }, mode: { observer: '观察模式', zy-acs-flow/src/map/http.js
@@ -166,3 +166,24 @@ console.error(error.message); }) } export const handleRestoreAgvAll = async (param, callback) => { await request.post('/handler/restore/agv', param, { headers: { 'appKey': HANDLE_APP_KEY } }).then((res) => { const { code, msg, data } = res.data; if (code === 200) { notify.success(msg); if (callback) { callback(data) } } else { notify.error(msg); } }).catch((error) => { notify.error(error.message); console.error(error.message); }) } zy-acs-flow/src/map/insight/agv/AgvMain.jsx
@@ -14,7 +14,7 @@ } from '@mui/material'; import { useNotification } from '../../Notification'; import AgvThree from './AgvThree'; import { getAgvInfo } from '../../http'; import { handleRestoreAgvAll } from '../../http'; import BoolValueIcon from '../BoolValueIcon'; import ConfirmButton from '../../../page/components/ConfirmButton'; @@ -99,15 +99,15 @@ return endThree; }, [info]); const handleReset = () => { alert(1) const handleRestoreAll = () => { handleRestoreAgvAll({ agvNo: info.agvNo }); } const updateStatus = (status) => { const updateStatus = () => { dataProvider.update('agv', { id: info.agvId, data: { status: status === 0 ? 1 : 0 status: info.status === 0 ? 1 : 0 } }).then(({ data }) => { fetchAgvInfo(curAgvNo); @@ -199,22 +199,22 @@ }} /> <ConfirmButton label="page.map.action.reset" label="page.map.action.restoreALl" color="primary" variant="contained" onConfirm={() => { handleReset(); handleRestoreAll(); }} /> {info && ( info.status === 1 ? <Button variant="contained" color="error" fullWidth onClick={() => { updateStatus(info.status); updateStatus(); }}> {translate('page.map.action.disable')} </Button> : <Button variant="contained" fullWidth onClick={() => { updateStatus(info.status); updateStatus(); }}> {translate('page.map.action.enable')} </Button> zy-acs-manager/src/main/java/com/zy/acs/manager/core/HandlerController.java
@@ -17,6 +17,7 @@ import com.zy.acs.manager.manager.enums.ActionStsType; import com.zy.acs.manager.manager.enums.LocStsType; import com.zy.acs.manager.manager.enums.TaskStsType; import com.zy.acs.manager.manager.enums.TaskTypeType; import com.zy.acs.manager.manager.service.*; import com.zy.acs.manager.system.controller.BaseController; import lombok.extern.slf4j.Slf4j; @@ -190,9 +191,8 @@ return R.ok(); } @RequestMapping(value = "/reset", method = {RequestMethod.GET, RequestMethod.POST}) public R reset(@RequestHeader String appKey, @RequestBody HandlerPublishParam param) { @RequestMapping(value = "/restore/agv", method = {RequestMethod.GET, RequestMethod.POST}) public R restoreAgv(@RequestHeader String appKey, @RequestBody HandlerPublishParam param) { if (Cools.isEmpty(appKey)) { return R.error(); } @@ -203,6 +203,18 @@ Agv agv = null; if (!Cools.isEmpty(param.getAgvNo())) { agv = agvService.selectByUuid(param.getAgvNo()); List<Task> tasks = taskService.selectInSts(agv.getId(), TaskStsType.WAITING, TaskStsType.ASSIGN, TaskStsType.PROGRESS); if (!Cools.isEmpty(tasks)) { for (Task task : tasks) { if (TaskTypeType.LOC_TO_LOC.toString().equals(task.getTaskTypeEl()) || TaskTypeType.LOC_TO_STA.toString().equals(task.getTaskTypeEl()) || TaskTypeType.STA_TO_LOC.toString().equals(task.getTaskTypeEl()) || TaskTypeType.STA_TO_STA.toString().equals(task.getTaskTypeEl()) ) { return R.error("Restore Failed, because the agv has Tasks that are associated with Loc!"); } } } } if (null != agv) { @@ -239,6 +251,8 @@ return R.error(); } Agv agv = agvService.selectByUuid(param.getAgvNo()); // block // Future<R> future = threadPoolRegulator.getInstance().submit(() -> { // mapDataDispatcher.modifyDynamicMatrix(null, null, param.getAgvNo(), true); @@ -249,6 +263,7 @@ // non-block CompletableFuture<?> completableFuture = CompletableFuture.supplyAsync(() -> { mapDataDispatcher.modifyDynamicMatrix(null, null, param.getAgvNo(), true); avoidWaveCalculator.calcDynamicNodeByVehicle(agv, null); return R.ok(); }, threadPoolRegulator.getInstance());