自动化立体仓库 - WCS系统
#
zjj
2024-01-26 95c6ea9da63330ae9d8936c521fbfb232132e143
#
2个文件已添加
5个文件已修改
78 ■■■■ 已修改文件
src/main/java/com/zy/asrs/mapper/BasRgvMapMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/BasRgvMapService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/BasRgvMapServiceImpl.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/MainProcess.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/BasRgvMapMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/BasRgvMapMapper.java
@@ -3,10 +3,12 @@
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.zy.asrs.entity.BasRgvMap;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
@Mapper
@Repository
public interface BasRgvMapMapper extends BaseMapper<BasRgvMap> {
    BasRgvMap selectByRgvNo(@Param("rgvNo") Integer rgvNo);
}
src/main/java/com/zy/asrs/service/BasRgvMapService.java
New file
@@ -0,0 +1,10 @@
package com.zy.asrs.service;
import com.baomidou.mybatisplus.service.IService;
import com.zy.asrs.entity.BasRgvErr;
import com.zy.asrs.entity.BasRgvMap;
public interface BasRgvMapService extends IService<BasRgvMap> {
    BasRgvMap selectByRgvNo(Integer rgvNo);
}
src/main/java/com/zy/asrs/service/impl/BasRgvMapServiceImpl.java
New file
@@ -0,0 +1,16 @@
package com.zy.asrs.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.zy.asrs.entity.BasRgvMap;
import com.zy.asrs.mapper.BasRgvMapMapper;
import com.zy.asrs.service.BasDevpService;
import com.zy.asrs.service.BasRgvMapService;
import org.springframework.stereotype.Service;
@Service("basRgvMapService")
public class BasRgvMapServiceImpl extends ServiceImpl<BasRgvMapMapper, BasRgvMap> implements BasRgvMapService {
    @Override
    public BasRgvMap selectByRgvNo(Integer rgvNo) {
        return this.baseMapper.selectByRgvNo(rgvNo);
    }
}
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -94,6 +94,8 @@
    private BasRgvMapMapper basRgvMapMapper;
    @Autowired
    private WrkMastService wrkMastService;
    @Autowired
    private BasRgvMapService basRgvMapService;
    @Value("${wms.url}")
    private String wmsUrl;
@@ -2209,15 +2211,16 @@
    public synchronized void rgvCompleteWrkMastSta() {
        try{
            for (DevpSlave devp : slaveProperties.getDevp()) {
            for (RgvSlave rgvSlave:slaveProperties.getRgv()) {
                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
                List<BasRgvMap> basRgvMaps = basRgvMapService.selectList(new EntityWrapper<>());
            for (BasRgvMap rgvSlave:basRgvMaps) {
                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getRgvNo());
                RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
                if (rgvProtocol == null) {
                    continue;
                }
                BasRgv basRgv = basRgvService.selectById(rgvSlave.getId());
                BasRgv basRgv = basRgvService.selectById(rgvSlave.getRgvNo());
                if (basRgv == null) {
                    log.error("{}号RGV尚未在数据库进行维护!3", rgvSlave.getId());
                    log.error("{}号RGV尚未在数据库进行维护!3", rgvSlave.getRgvNo());
                    continue;
                }
@@ -2244,8 +2247,13 @@
                            continue;
                        }
                        DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
                        SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
                        StaProtocol staProtocol = devpThread.getStation().get(wrkMastSta.getStaEnd());
                        if (staProtocol == null) {
                            continue;
                        } else {
                            staProtocol = staProtocol.clone();
                        }
                        if (!staProtocol.isAutoing() || !staProtocol.isLoading()){
                            continue;
                        }
@@ -2292,15 +2300,16 @@
    public synchronized void rgvRunWrkMastFullSta() {
        boolean wrkEnable = false;
        try{
            for (RgvSlave rgvSlave:slaveProperties.getRgv()) {
                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
            List<BasRgvMap> basRgvMaps = basRgvMapService.selectList(new EntityWrapper<>());
            for (BasRgvMap rgvSlave:basRgvMaps) {
                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getRgvNo());
                RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
                if (rgvProtocol == null) {
                    continue;
                }
                BasRgv basRgv = basRgvService.selectById(rgvSlave.getId());
                BasRgv basRgv = basRgvService.selectById(rgvSlave.getRgvNo());
                if (basRgv == null) {
                    log.error("{}号RGV尚未在数据库进行维护!4", rgvSlave.getId());
                    log.error("{}号RGV尚未在数据库进行维护!4", rgvSlave.getRgvNo());
                    continue;
                }
@@ -2490,15 +2499,16 @@
            if (integer==0){
                return;
            }
            for (RgvSlave rgvSlave:slaveProperties.getRgv()) {
                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
            List<BasRgvMap> basRgvMaps = basRgvMapService.selectList(new EntityWrapper<>());
            for (BasRgvMap rgvSlave:basRgvMaps) {
                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getRgvNo());
                RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
                if (rgvProtocol == null) {
                    continue;
                }
                BasRgv basRgv = basRgvService.selectById(rgvSlave.getId());
                BasRgv basRgv = basRgvService.selectById(rgvSlave.getRgvNo());
                if (basRgv == null) {
                    log.error("{}号RGV尚未在数据库进行维护!1", rgvSlave.getId());
                    log.error("{}号RGV尚未在数据库进行维护!1", rgvSlave.getRgvNo());
                    continue;
                }
@@ -2532,9 +2542,10 @@
     * 小车XY移动  避让
     * */
    public synchronized boolean rgvAvoidanceXY(Integer rgvId){
        if (rgvId==1){
        BasRgvMap basRgvMap = basRgvMapService.selectByRgvNo(rgvId);
        if (basRgvMap.getStartRoute() == 100){
            try{
                BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvId);
                //  命令下发区 --------------------------------------------------------------------------
                RgvCommand rgvCommand = new RgvCommand();
                rgvCommand.setRgvNo(rgvId); // RGV编号
@@ -2557,7 +2568,6 @@
            }
        }else {
            try{
                BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvId);
                //  命令下发区 --------------------------------------------------------------------------
                RgvCommand rgvCommand = new RgvCommand();
                rgvCommand.setRgvNo(rgvId); // RGV编号
src/main/java/com/zy/core/MainProcess.java
@@ -79,7 +79,7 @@
                    //空托盘自动出库
                    mainService.autoEmptyOut();
//                    //空托盘自动入库
                    mainService.autoEmptyIn();
//                    mainService.autoEmptyIn();
                    // 其他  ===>> 入出库模式切换
//                    i++;
src/main/resources/application.yml
@@ -106,7 +106,7 @@
    crnInStn[0]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 135
      row: 12
      row: 10
      bay: 1
      lev: 1
    # 堆垛机出库站点
src/main/resources/mapper/BasRgvMapMapper.xml
@@ -13,5 +13,9 @@
        <result column="lock_end_route" property="lockEndRoute" />
    </resultMap>
    <select id="selectByRgvNo" resultType="com.zy.asrs.entity.BasRgvMap">
        select * from asr_bas_rgv_map
        where rgv_no = #{rgvNo}
    </select>
</mapper>