#
Junjie
3 天以前 58d3d34b740a07099384152e0024e6c09891eca5
src/main/java/com/zy/asrs/controller/ConsoleController.java
@@ -16,12 +16,11 @@
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.mapper.BasCrnErrorMapper;
import com.zy.asrs.mapper.LocMastMapper;
import com.zy.asrs.service.BasDevpService;
import com.zy.asrs.service.WrkMastService;
import com.zy.common.CodeRes;
import com.zy.common.service.CommonService;
import com.zy.common.utils.News;
import com.zy.common.utils.RedisUtil;
import com.zy.core.CrnThread;
import com.zy.core.DevpThread;
import com.zy.core.Slave;
@@ -31,11 +30,15 @@
import com.zy.core.enums.SlaveType;
import com.zy.core.model.CrnSlave;
import com.zy.core.model.DevpSlave;
import com.zy.core.model.LedSlave;
import com.zy.core.model.RgvSlave;
import com.zy.core.model.protocol.CrnProtocol;
import com.zy.core.model.protocol.RgvProtocol;
import com.zy.core.model.protocol.StaProtocol;
import com.zy.core.properties.SlaveProperties;
import com.zy.core.properties.SystemProperties;
import com.zy.core.thread.BarcodeThread;
import com.zy.core.thread.RgvThread;
import com.zy.core.thread.ScaleThread;
import com.zy.core.thread.SiemensCrnThread;
import com.zy.system.entity.Config;
@@ -44,6 +47,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.*;
/**
@@ -62,13 +66,13 @@
    @Autowired
    private BasDevpService basDevpService;
    @Autowired
    private LocMastMapper locMastMapper;
    @Autowired
    private BasCrnErrorMapper basCrnErrorMapper;
    @Autowired
    private ConfigService configService;
    @Autowired
    private CommonService commonService;
    @Autowired
    private RedisUtil redisUtil;
    @PostMapping("/system/running/status")
    @ManagerAuth(memo = "系统运行状态")
@@ -136,6 +140,7 @@
            vo.setSiteStatus(SiteStatusType.process(staProtocol));  // 状态
            vos.add(vo);
        }
        redisUtil.set("siteLatestData", JSON.toJSONString(vos));
        return R.ok().add(vos);
    }
@@ -180,6 +185,32 @@
            vos.add(vo);
        }
        redisUtil.set("crnLatestData", JSON.toJSONString(vos));
        return R.ok().add(vos);
    }
    @PostMapping("/latest/data/rgv")
    @ManagerAuth(memo = "RGV实时数据")
    public R rgvLatestData(){
        List<RgvLatestDataVo> vos = new ArrayList<>();
        for (RgvSlave rgvSlave : slaveProperties.getRgv()) {
            // 获取堆垛机信息
            RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
            if (rgvThread == null) {
                continue;
            }
            RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
            if (rgvProtocol == null) {
                continue;
            }
            RgvLatestDataVo vo = new RgvLatestDataVo();
            vo.setRgvId(rgvProtocol.getRgvNo());   //  RGV编号
            vo.setTrackSiteNo(String.valueOf(rgvProtocol.getRgvPos()));
            vo.setRgvStatus(rgvProtocol.getStatusType());
            vos.add(vo);
        }
        redisUtil.set("rgvLatestData", JSON.toJSONString(vos));
        return R.ok().add(vos);
    }
@@ -305,6 +336,41 @@
        return R.error();
    }
    @PostMapping("/rgv/detail")
    @ManagerAuth(memo = "RGV设备数据详情")
    public R rgvDetail(@RequestParam Integer rgvNo){
        if (Cools.isEmpty(rgvNo)){
            return R.parse(CodeRes.EMPTY);
        }
        RgvDetailVo vo = new RgvDetailVo();
        for (RgvSlave rgvSlave : slaveProperties.getRgv()) {
            if (rgvSlave.getId().equals(rgvNo)) {
                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
                RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
                vo.setRgvNo(rgvNo);
                vo.setWorkNo(rgvProtocol.getTaskNo1());
                vo.setRgvStatus(rgvProtocol.getStatusType().desc);
                vo.setError(String.valueOf(rgvProtocol.getAlarm()));
                if (rgvProtocol.getTaskNo1() > 0) {
                    WrkMast wrkMast = wrkMastService.selectById(rgvProtocol.getTaskNo1());
                    if (wrkMast != null) {
                        vo.setSourceStaNo(wrkMast.getSourceStaNo$());
                        vo.setStaNo(wrkMast.getStaNo$());
                        vo.setWrkSts(wrkMast.getWrkSts$());   // 工作状态
                        vo.setIoType(wrkMast.getIoType$());   //  入出库类型
                        vo.setSourceLocNo(wrkMast.getSourceLocNo$());
                        vo.setLocNo(wrkMast.getLocNo$());
                        vo.setRgvStatus(rgvProtocol.getStatusType().desc);
                    }
                }
                return R.ok().add(vo);
            }
        }
        return R.error();
    }
    @Deprecated
    @PostMapping("/site/update")
    @ManagerAuth(memo = "输送设备数据修改")
@@ -333,4 +399,15 @@
        return R.ok().add(JSON.toJSONString(jsonObjects));
    }
    @GetMapping("/getLedInfos")
    public R getLedInfos(HttpServletRequest request) {
        String remoteAddr = request.getRemoteAddr();
        for (LedSlave slave : slaveProperties.getLed()) {
            if (slave.getIp().equals(remoteAddr)) {
                return R.ok().add(slave);
            }
        }
        return R.ok();
    }
}