|  |  | 
 |  |  | import com.zy.acs.manager.core.service.*; | 
 |  |  | import com.zy.acs.manager.core.service.astart.MapDataDispatcher; | 
 |  |  | import com.zy.acs.manager.core.utils.RouteGenerator; | 
 |  |  | import com.zy.acs.manager.manager.entity.Agv; | 
 |  |  | import com.zy.acs.manager.manager.entity.AgvDetail; | 
 |  |  | import com.zy.acs.manager.manager.entity.Code; | 
 |  |  | import com.zy.acs.manager.manager.entity.FuncSta; | 
 |  |  | import com.zy.acs.manager.manager.entity.*; | 
 |  |  | import com.zy.acs.manager.manager.enums.FuncStaType; | 
 |  |  | import com.zy.acs.manager.manager.enums.StatusType; | 
 |  |  | import com.zy.acs.manager.manager.service.*; | 
 |  |  | 
 |  |  |     private RouteGenerator routeGenerator; | 
 |  |  |     @Autowired | 
 |  |  |     private FuncStaService funcStaService; | 
 |  |  |     @Autowired | 
 |  |  |     private AgvModelService agvModelService; | 
 |  |  |  | 
 |  |  |     @RequestMapping(value = "/system/info", method = {RequestMethod.GET, RequestMethod.POST}) | 
 |  |  |     public R systemInfo() { | 
 |  |  | 
 |  |  |                 .eq(FuncSta::getType, FuncStaType.STANDBY.toString()) | 
 |  |  |                 .orderByAsc(FuncSta::getId)); | 
 |  |  |  | 
 |  |  |         List<Agv> agvList = agvService.list(new LambdaQueryWrapper<Agv>().orderByAsc(Agv::getId)); | 
 |  |  |         List<Agv> agvList = agvService.list(new LambdaQueryWrapper<Agv>().eq(Agv::getStatus, StatusType.ENABLE.val).    orderByAsc(Agv::getId)); | 
 |  |  |  | 
 |  |  |         for (int i = 0; i < standbyFunStaList.size(); i++) { | 
 |  |  |         int size = Math.min(standbyFunStaList.size(), agvList.size()); | 
 |  |  |  | 
 |  |  |         for (int i = 0; i < size; i++) { | 
 |  |  |  | 
 |  |  |             FuncSta funcSta = standbyFunStaList.get(i); | 
 |  |  |             Code code = codeService.getCacheById(funcSta.getCode()); | 
 |  |  |  | 
 |  |  |             Agv agv = agvList.get(i); | 
 |  |  |             AgvDetail agvDetail = agvDetailService.selectByAgvId(agv.getId()); | 
 |  |  |             AgvModel agvModel = agvModelService.getByAgvId(agv.getId()); | 
 |  |  |             Double workDirection = agvModel.getWorkDirection(); | 
 |  |  |  | 
 |  |  |             agvDetail.setPos(1); | 
 |  |  |             agvDetail.setCode(code.getId()); | 
 |  |  |             agvDetail.setStatus(AgvStatusType.IDLE.val); | 
 |  |  |             agvDetail.setAgvAngle(90D); | 
 |  |  |             agvDetail.setAgvAngle(workDirection); | 
 |  |  |             agvDetail.setVol(5000); | 
 |  |  |  | 
 |  |  |             agvDetailService.updateById(agvDetail); |