zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/entity/Loc.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/controller/MapController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/service/MapService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/model/enums/LocStsType.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/LocStsService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/LocStsServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-asrs-wcs/src/main/resources/application.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/entity/Loc.java
@@ -1,29 +1,24 @@ package com.zy.asrs.wcs.core.entity; import com.baomidou.mybatisplus.annotation.*; import java.text.SimpleDateFormat; import java.util.Date; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import com.zy.asrs.framework.common.Cools; import com.zy.asrs.framework.common.SpringUtils; import com.zy.asrs.wcs.core.service.LocCtgService; import com.zy.asrs.wcs.core.service.LocStsService; import com.zy.asrs.wcs.core.service.ZoneService; import com.zy.asrs.wcs.system.entity.Host; import com.zy.asrs.wcs.system.entity.User; import org.springframework.format.annotation.DateTimeFormat; import java.text.SimpleDateFormat; import java.util.Date; import com.baomidou.mybatisplus.annotation.TableLogic; import io.swagger.annotations.ApiModel; import com.zy.asrs.wcs.system.service.HostService; import com.zy.asrs.wcs.system.service.UserService; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import com.zy.asrs.framework.common.Cools; import com.zy.asrs.framework.common.SpringUtils; import com.zy.asrs.wcs.system.service.UserService; import com.zy.asrs.wcs.system.service.HostService; import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.text.SimpleDateFormat; import java.util.Date; @Data @@ -244,6 +239,15 @@ return null; } public String getLocStsFlag(){ LocStsService service = SpringUtils.getBean(LocStsService.class); LocSts locSts = service.getById(this.locSts); if (!Cools.isEmpty(locSts)){ return String.valueOf(locSts.getFlag()); } return null; } public String getLocCtg$(){ LocCtgService service = SpringUtils.getBean(LocCtgService.class); LocCtg locCtg = service.getById(this.locCtg); zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/controller/MapController.java
@@ -48,7 +48,7 @@ // 穿梭车 -------------------------------------------------------- @GetMapping("/shuttle/info") public R shuttleInfo(@RequestParam String shuttleNo) { return R.ok().add(mapService.getShuttleInfo(shuttleNo, getHostId())); return R.ok().add(mapService.getShuttleInfo(shuttleNo)); } // 提升机 -------------------------------------------------------- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/service/MapService.java
@@ -5,11 +5,16 @@ import com.zy.asrs.framework.common.Cools; import com.zy.asrs.framework.exception.CoolException; import com.zy.asrs.wcs.common.domain.enums.DictType; import com.zy.asrs.wcs.core.entity.Loc; import com.zy.asrs.wcs.core.map.controller.param.MapDataParam; import com.zy.asrs.wcs.core.map.controller.param.MapQueryParam; import com.zy.asrs.wcs.core.map.controller.result.LiftVo; import com.zy.asrs.wcs.core.map.controller.result.LocVo; import com.zy.asrs.wcs.core.map.controller.result.ShuttleVo; import com.zy.asrs.wcs.core.map.entity.MapItem; import com.zy.asrs.wcs.core.model.enums.LocStsType; import com.zy.asrs.wcs.core.service.LocService; import com.zy.asrs.wcs.core.service.LocStsService; import com.zy.asrs.wcs.core.utils.Utils; import com.zy.asrs.wcs.rcs.cache.SlaveConnection; import com.zy.asrs.wcs.rcs.entity.Device; @@ -25,6 +30,7 @@ import com.zy.asrs.wcs.system.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.*; @@ -42,6 +48,10 @@ private DeviceTypeService deviceTypeService; @Autowired private DeviceService deviceService; @Autowired private LocService locService; @Autowired private LocStsService locStsService; public String getMapFloorList(Long userId) { String floorKey = "floor-list"; @@ -67,7 +77,10 @@ return Optional.ofNullable(dict).map(Dict::getValue).orElse(null); } @Transactional public void saveMapData(MapDataParam param, Long userId) { Date now = new Date(); // dict String mapKey = getMapKey(param.getFloor()); Dict dict = dictService.getOne(new LambdaQueryWrapper<Dict>().eq(Dict::getFlag, mapKey)); if (Cools.isEmpty(dict)) { @@ -89,6 +102,27 @@ throw new CoolException("服务器内部错误"); } } // loc locService.remove(new LambdaQueryWrapper<Loc>().eq(Loc::getLev, param.getFloor())); for (MapItem item : param.getItemList()) { Loc loc = new Loc(); loc.setRow(Integer.parseInt(String.valueOf(item.getProperty().get("row")))); loc.setBay(Integer.parseInt(String.valueOf(item.getProperty().get("bay")))); loc.setLev(param.getFloor()); String locNo = Utils.getLocNo(loc.getRow(), loc.getBay(), loc.getLev()); loc.setLocNo(locNo); loc.setName(locNo); loc.setLocSts(LocStsType.O.val()); loc.setCreateBy(userId); loc.setCreateTime(now); loc.setUpdateBy(userId); loc.setUpdateTime(now); if (!locService.save(loc)) { throw new CoolException("服务器内部错误"); } } } @@ -96,17 +130,14 @@ List<LocVo> locVos = new ArrayList<>(); int row = Utils.getRow(locNo); int bay = Utils.getBay(locNo); String[] statusOptions = {"F", "D", "O"}; Random random = new Random(); for (int lev = 1; lev < 6; lev++) { locVos.add(new LocVo(Utils.getLocNo(row, bay, lev), statusOptions[random.nextInt(statusOptions.length)])); List<Loc> locList = locService.list(new LambdaQueryWrapper<Loc>().eq(Loc::getRow, row).eq(Loc::getBay, bay).orderByAsc(Loc::getLev)); for (Loc loc : locList) { locVos.add(new LocVo(loc.getLocNo(), loc.getLocStsFlag())); } return locVos; } public ShuttleVo getShuttleInfo(String shuttleNo, Long hostId) { public ShuttleVo getShuttleInfo(String shuttleNo) { ShuttleVo vo = new ShuttleVo(); vo.setShuttleNo(shuttleNo); DeviceType deviceType = deviceTypeService.getOne(new LambdaQueryWrapper<DeviceType>().eq(DeviceType::getFlag, SlaveType.Shuttle.toString())); @@ -115,7 +146,13 @@ return vo; } ShuttleThread thread = (ShuttleThread)SlaveConnection.get(SlaveType.Shuttle, device.getId().intValue()); if (null == thread) { return vo; } ShuttleProtocol protocol = thread.getStatus(); if (null == protocol) { return vo; } vo.setTaskNo(String.valueOf(protocol.getTaskNo())); vo.setStatus(protocol.getProtocolStatusType().desc); vo.setOriginLocNo(protocol.getSourceLocNo()); @@ -164,22 +201,6 @@ " {\n" + " label: '1F',\n" + " value: 1\n" + " },\n" + " {\n" + " label: '2F',\n" + " value: 2\n" + " },\n" + " {\n" + " label: '3F',\n" + " value: 3\n" + " },\n" + " {\n" + " label: '4F',\n" + " value: 4\n" + " },\n" + " {\n" + " label: '5F',\n" + " value: 5\n" + " },\n" + "]"; zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/model/enums/LocStsType.java
New file @@ -0,0 +1,38 @@ package com.zy.asrs.wcs.core.model.enums; import com.zy.asrs.framework.common.SpringUtils; import com.zy.asrs.framework.exception.CoolException; import com.zy.asrs.wcs.core.entity.LocSts; import com.zy.asrs.wcs.core.service.LocStsService; public enum LocStsType { D, F, O, X, ; LocStsType() { } public long val() { LocStsService service = SpringUtils.getBean(LocStsService.class); LocSts entity = service.selectByFlag(this.toString()); if (entity == null) { throw new CoolException("LocStsType Error!"); } return entity.getId(); } public static LocStsType get(String el) { for (LocStsType value : LocStsType.values()) { if (el.equals(value.toString())) { return value; } } return null; } } zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/LocStsService.java
@@ -5,4 +5,6 @@ public interface LocStsService extends IService<LocSts> { LocSts selectByFlag(String flag); } zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/LocStsServiceImpl.java
@@ -1,5 +1,7 @@ package com.zy.asrs.wcs.core.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.zy.asrs.wcs.core.entity.DeviceCtg; import com.zy.asrs.wcs.core.mapper.LocStsMapper; import com.zy.asrs.wcs.core.entity.LocSts; import com.zy.asrs.wcs.core.service.LocStsService; @@ -9,4 +11,9 @@ @Service("locStsService") public class LocStsServiceImpl extends ServiceImpl<LocStsMapper, LocSts> implements LocStsService { @Override public LocSts selectByFlag(String flag) { return this.getOne(new LambdaQueryWrapper<LocSts>().eq(LocSts::getFlag, flag)); } } zy-asrs-wcs/src/main/resources/application.yml
@@ -18,9 +18,9 @@ # url: jdbc:mysql://47.97.1.152:3306/asrs?useUnicode=trKue&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai # username: root # password: zy@123 url: jdbc:mysql://localhost:3306/asrs?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai url: jdbc:mysql://192.168.2.95:3306/asrs?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai username: root password: xltys1995 password: root # driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver # url: jdbc:sqlserver://47.97.1.152:51433;databasename=jkasrs # username: sa