zy-acs-flow/src/map/MapPage.jsx | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-acs-flow/src/map/header/FakeFab.jsx | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-acs-flow/src/map/header/RePositionBtn.jsx | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-acs-flow/src/map/http.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-acs-manager/src/main/java/com/zy/acs/manager/core/HandlerController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/MapController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
zy-acs-flow/src/map/MapPage.jsx
@@ -25,6 +25,7 @@ import PulseSignal from "../page/components/PulseSignal"; import FakeFab from "./header/FakeFab"; import RouteFab from "./header/RouteFab"; import RePositionBtn from "./header/RePositionBtn"; let player; let websocket; @@ -282,6 +283,7 @@ > {rcsStatus ? translate('page.map.action.shutdown') : translate('page.map.action.startup')} </Button> <RePositionBtn /> <Button variant="contained" color="primary"> {translate('page.map.action.monitor')} </Button> zy-acs-flow/src/map/header/FakeFab.jsx
@@ -25,7 +25,7 @@ pass = true; } else { pass = false; if (!pwd) { if (pwd) { alert('Incorrect password'); } } zy-acs-flow/src/map/header/RePositionBtn.jsx
New file @@ -0,0 +1,40 @@ import React, { useState, useRef, useEffect, useMemo } from "react"; import { useTranslate } from "react-admin"; import { Button, } from '@mui/material'; import { handleRePositionAll } from "../http"; const RePositionBtn = ({ onClick }) => { const handleToggle = () => { let pass = true; const pwd = prompt("please enter password:"); if (pwd === 'xltys1995') { pass = true; } else { pass = false; if (pwd) { alert('Incorrect password'); } } if (pass) { handleRePositionAll(null, (res) => { console.log(res); }); } } return ( <Button variant="contained" color="primary" onClick={handleToggle} sx={{ mr: 2 }} > 重新定位 </Button> ); } export default RePositionBtn; zy-acs-flow/src/map/http.js
@@ -310,3 +310,24 @@ } return false; } export const handleRePositionAll = async (param) => { try { const res = await request.post('/handler/rePositionAllAgv', param, { headers: { 'appKey': HANDLE_APP_KEY } }); const { code, msg, data } = res.data; if (code === 200) { notify.success(msg); return true; } else { notify.error(msg); } } catch (error) { notify.error(error.message); console.error(error.message); } return false; } zy-acs-manager/src/main/java/com/zy/acs/manager/core/HandlerController.java
@@ -2,6 +2,8 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.zy.acs.common.constant.RedisConstant; import com.zy.acs.common.utils.RedisSupport; import com.zy.acs.common.utils.Utils; import com.zy.acs.framework.common.Cools; import com.zy.acs.framework.common.R; @@ -17,6 +19,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; @@ -32,6 +35,8 @@ @RestController @RequestMapping("/api/handler") public class HandlerController extends BaseController { private final RedisSupport redis = RedisSupport.defaultRedisSupport; public static final String APP_KEY = "xltys1995"; @@ -66,6 +71,16 @@ @Autowired private PatrolService patrolService; @PreAuthorize("hasAuthority('manager:loc:update')") @PostMapping("/rePositionAllAgv") public synchronized R rePositionAllAgv() { final Integer MAP_DEFAULT_LEV = 1; redis.deleteValue(RedisConstant.AGV_MAP_ASTAR_DYNAMIC_FLAG, String.valueOf(MAP_DEFAULT_LEV)); // avoidWaveCalculator.calcDynamicNodeWhenBoot(); return R.ok(); } @RequestMapping(value = "/control/agv", method = {RequestMethod.GET, RequestMethod.POST}) @Transactional public R controlAgv(@RequestHeader String appKey, zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/MapController.java
@@ -13,16 +13,16 @@ import com.zy.acs.manager.common.domain.MapDto; import com.zy.acs.manager.common.domain.MapRouteDto; import com.zy.acs.manager.common.exception.BusinessException; import com.zy.acs.manager.core.service.PatrolService; import com.zy.acs.manager.core.domain.BackpackDto; import com.zy.acs.manager.core.service.AvoidWaveCalculator; import com.zy.acs.manager.core.service.MapService; import com.zy.acs.manager.core.service.PatrolService; import com.zy.acs.manager.core.service.floyd.FloydNavigateService; import com.zy.acs.manager.manager.controller.param.MapDataParam; import com.zy.acs.manager.manager.controller.param.MapParam; import com.zy.acs.manager.manager.controller.result.MapAgvVo; import com.zy.acs.manager.manager.controller.result.MapPointVo; import com.zy.acs.manager.manager.controller.result.MapRouteVo; import com.zy.acs.manager.manager.entity.NavMap; import com.zy.acs.manager.manager.entity.*; import com.zy.acs.manager.manager.enums.AgvStsType; import com.zy.acs.manager.manager.enums.StatusType; @@ -72,6 +72,8 @@ private ConfigService configService; @Autowired private PatrolService patrolService; @Autowired private AvoidWaveCalculator avoidWaveCalculator; @PreAuthorize("hasAuthority('manager:loc:update')") @PostMapping("/startupOrShutdown")