liurunyu
2024-01-16 6de539c46205a6e26eaab24be2e1a21f9054af08
1、完善通信中单件对上行数据处理的逻辑及代码
4个文件已修改
26 ■■■■ 已修改文件
pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/dbSv/DbSv.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkDealAutoReport.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkPreGenObjs.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/dbSv/DbSv.java
@@ -42,17 +42,16 @@
    @Autowired
    private RmAutoReportHistoryMapper rmAutoReportHistoryMapperDao ;//控制器历史上报数据DAO
    @Autowired
    @Lazy
    private DbSv sv ;
    //@Autowired
    //@Lazy
    //private DbSv sv ;
    /**
     * 通过控制器地址从数据库表中查询控制器
     * @param rtuAddr 控制器地址
     * @return 控制器
     */
    public PrController getPrControllerByRtuAddr(String rtuAddr){
    public PrController getControllersByRtuAddrAndIntakeNotNull(String rtuAddr){
        List<PrController> list = this.prControllerMapperDao.getControllersByRtuAddrAndIntakeNotNull(rtuAddr) ;
        if(list != null && list.size() > 0){
            return list.get(0) ;
pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java
@@ -70,7 +70,7 @@
    private void saveOrUpdateLast(DbSv sv, PrController controller, String rtuAddr, DataAlarmVo alarmVo, DataStateVo stateVo){
        RmAlarmStateLast po = sv.getRmLastAlarmState(rtuAddr) ;
        if(po == null){
            po = new RmAlarmStateLast(null, controller==null?null:controller.getId(), controller.getId(),
            po = new RmAlarmStateLast(null, controller==null?null:controller.getId(), controller==null?null:controller.getIntakeId(),
                    rtuAddr,
                    new Date(),
                    alarmVo==null?null:alarmVo.batteryVolt, alarmVo==null?null:alarmVo.loss, alarmVo==null?null:alarmVo.meter, alarmVo==null?null:alarmVo.valve,
@@ -91,7 +91,7 @@
     * @param stateVo 状态对象
     */
    private void saveHistory(DbSv sv, PrController controller, String rtuAddr, DataAlarmVo alarmVo, DataStateVo stateVo){
        RmAlarmStateHistory po = new RmAlarmStateHistory(null, controller==null?null:controller.getId(), controller.getId(),
        RmAlarmStateHistory po = new RmAlarmStateHistory(null, controller==null?null:controller.getId(), controller==null?null:controller.getIntakeId(),
                rtuAddr,
                new Date(),
                alarmVo==null?null:alarmVo.batteryVolt, alarmVo==null?null:alarmVo.loss, alarmVo==null?null:alarmVo.meter, alarmVo==null?null:alarmVo.valve,
@@ -101,9 +101,8 @@
    private RmAlarmStateLast update(PrController controller, RmAlarmStateLast po, DataAlarmVo alarmVo, DataStateVo stateVo){
        if(controller != null){
            po.controllerid = controller.getId() ;
        }
        po.controllerid = controller==null?null:controller.getId() ;
        po.dt = new Date() ;
        if(alarmVo != null){
            po.bateryvolt = alarmVo.batteryVolt ;
pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkDealAutoReport.java
@@ -60,7 +60,7 @@
    private void saveOrUpdateLast(DbSv sv, PrController controller, String rtuAddr, DataCdC0Vo dataCdC0Vo) throws Exception {
        RmAutoReportLast po = sv.getRmLastAutoReport(rtuAddr) ;
        if(po == null){
            po = new RmAutoReportLast(null, controller.getId(), controller.getId(),
            po = new RmAutoReportLast(null, controller==null?null:controller.getId(), controller==null?null:controller.getId(),
                    rtuAddr,
                    new Date(),
                    DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCdC0Vo.rtuDt),
@@ -81,7 +81,7 @@
     * @param dataCdC0Vo 自报数据对象
     */
    private void saveHistory(DbSv sv, PrController controller, String rtuAddr, DataCdC0Vo dataCdC0Vo) throws Exception {
        RmAutoReportHistory po = new RmAutoReportHistory(null, controller.getId(), controller.getId(),
        RmAutoReportHistory po = new RmAutoReportHistory(null, controller==null?null:controller.getId(), controller==null?null:controller.getIntakeId(),
                rtuAddr,
                new Date(),
                DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCdC0Vo.rtuDt),
pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkPreGenObjs.java
@@ -32,9 +32,9 @@
        String rtuAddr = d.getRtuAddr() ;//TkRtuData里判断了rtuAddr为空
        DbSv sv = (DbSv)SpringContextUtil.getBean(DbSv.class) ;
        if(sv != null){
            PrController controller = sv.getPrControllerByRtuAddr(rtuAddr) ;
            PrController controller = sv.getControllersByRtuAddrAndIntakeNotNull(rtuAddr) ;
            if(controller == null){
                //数据库中未查询到控制器(RTU实体)
                //数据库中未查询(已经绑定且控制器地址相符)到控制器(RTU实体)
                //流浪者控制器
                PrControllerTramp rtuTramp = sv.getPrControllerTrampByRtuAddr(rtuAddr);
                if(rtuTramp == null){