*
lsh
1 天以前 c239509e6dabc82639aaab9e48cc4faf8b41fe80
*
3个文件已修改
35 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/RgvController.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/model/protocol/RgvProtocol.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/RgvThread.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/RgvController.java
@@ -468,8 +468,20 @@
                        if (rgvCircularShuttleParam.getStatus()==0){
                            rgvCircularShuttleParam.setStatus$(rgvProtocol.statusType.desc);
                        }
                        if (rgvCircularShuttleParam.getError()==0){
                            rgvCircularShuttleParam.setError$(rgvProtocol.getAlarm$());
                        if (rgvProtocol.getAlarmList().isEmpty()){
                            rgvCircularShuttleParam.setError(0);
                            rgvCircularShuttleParam.setError$("-");
                        } else {
                            StringBuilder alarmList = new StringBuilder();
                            for (Integer alarm : rgvProtocol.getAlarmList()){
                                BasRgvErr rgvErr = basRgvErrMapper.selectById(alarm);
                                alarmList.append((rgvErr==null || rgvErr.getErrName()==null)? "未知异常:"+alarm:rgvErr.getErrName());
                                if (alarm.equals(rgvProtocol.getAlarmList().get(rgvProtocol.getAlarmList().size() - 1))){
                                    break;
                                }
                                alarmList.append("---");
                            }
                            rgvCircularShuttleParam.setError$(alarmList.toString());
                        }
                    }
                }
src/main/java/com/zy/core/model/protocol/RgvProtocol.java
@@ -4,6 +4,9 @@
import com.zy.core.enums.*;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
 * Created by vincent on 2020/8/7
 */
@@ -104,6 +107,7 @@
     * 异常码
     */
    public Short alarm;
    public List<Integer> alarmList = new ArrayList<>();
    /**
     * 心跳指令 1-2每秒切换一次
src/main/java/com/zy/core/thread/RgvThread.java
@@ -27,7 +27,9 @@
import lombok.extern.slf4j.Slf4j;
import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
 * RGV线程
@@ -251,6 +253,7 @@
            OperateResultExOne<byte[]> result = siemensNet.Read("DB100.0", (short) 20);
            OperateResultExOne<byte[]> resultV = siemensNet.Read("DB20.16", (short) 2);
            OperateResultExOne<byte[]> resultE = siemensNet.Read("DB20.26", (short) 2);
            OperateResultExOne<byte[]> resultError = siemensNet.Read("DB13.0", (short) 13);
            if (result.IsSuccess && resultV.IsSuccess && resultE.IsSuccess) {
                if (null == rgvProtocol) {
                    rgvProtocol = new RgvProtocol();
@@ -267,9 +270,21 @@
                rgvProtocol.setRgvPos(siemensNet.getByteTransform().TransUInt32(result.Content, 16));
                rgvProtocol.setInstantaneousSpeed(Double.valueOf(siemensNet.getByteTransform().TransInt16(resultV.Content, 0)));
                rgvProtocol.setEndStaM(siemensNet.getByteTransform().TransInt16(resultE.Content, 0));
                boolean[] statusAlarmList = siemensNet.getByteTransform().TransBool(resultError.Content, 0, 13);
                int alarmCount = 0;
                List<Integer> alarmList = new ArrayList<>();
                for (boolean alarmSign : statusAlarmList){
                    alarmCount++;
                    if (alarmSign){
                        alarmList.add(alarmCount);
                    }
                }
                rgvProtocol.setAlarmList(alarmList);
//                rgvProtocol.setRgvPos((long)NumUtils.GetRandomIntInRange(1737000));
                OutputQueue.RGV.offer(MessageFormat.format("【{0}】[id:{1}] <<<<< 实时数据更新成功",DateUtils.convert(new Date()), slave.getId()));
                try {
                    // 根据实时信息更新数据库
                    BasRgvService basRgvService = SpringUtils.getBean(BasRgvService.class);