zhubaomin
2024-11-13 b1384c4959a4486d391369c4e7a58c4b4b0e9b9c
Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV
4个文件已修改
4个文件已添加
290 ■■■■■ 已修改文件
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/softUpgrade/state/UpgradeRtu.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/UgRtuControllerMapper.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voUg/VoUgResult.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/resources/mapper/UgRtuControllerMapper.xml 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/rtuUpgrade/task/QueryUgResultVo.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/rtuUpgrade/task/UgRtuResultCtrl.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/rtuUpgrade/task/UgRtuResultSv.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/softUpgrade/state/UpgradeRtu.java
@@ -52,7 +52,7 @@
        return sb.toString() ;
    }
    public String getStateName(int state){
    public static String getStateName(int state){
        switch (state) {
            case STATE_OFFLINE:
                return "离线";
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/UgRtuControllerMapper.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dy.pipIrrGlobal.pojoRm.UgRtuController;
import com.dy.pipIrrGlobal.voPr.VoController;
import com.dy.pipIrrGlobal.voUg.VoUgResult;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -94,6 +95,19 @@
     */
    Long selectCountByTaskAndCon(@Param("taskId") Long taskId, @Param("conId") Long conId) ;
    /**
     * 分页查询一个升级任务中所有控制器升级结查 数量
     *
     * @param params
     * @return
     */
    Long selectControllerUpgradeResultsCount(Map<?, ?> params) ;
    /**
     * 分页查询一个升级任务中所有控制器升级结查
     * @param params
     * @return
     */
    List<VoUgResult> selectControllerUpgradeResults(Map<?, ?> params);
    /**
     * update record selective
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoController.java
@@ -22,7 +22,7 @@
 */
@Data
@JsonPropertyOrder({ "id", "rtuAddr", "intakeName", "bindNumber", "findDt", "isOnLine", "protocol", "remarks"})
@JsonPropertyOrder({ "id", "rtuAddr", "intakeName", "bindNumber", "findDt", "isOnLine", "protocol", "protocolVersion", "remarks"})
@HeadRowHeight(30)
@ContentRowHeight(20)
public class VoController implements BaseEntity {
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voUg/VoUgResult.java
New file
@@ -0,0 +1,78 @@
package com.dy.pipIrrGlobal.voUg;
import com.alibaba.fastjson2.annotation.JSONField;
import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
 * @Author: liurunyu
 * @Date: 2024/11/13 16:53
 * @Description
 */
@Data
@JsonPropertyOrder({ "id", "rtuAddr", "intakeName", "isOver", "isOverStr", "ugState", "ugStateStr", "overDt"})
public class VoUgResult {
    /**
     * 主键
     */
    @Schema(description = "主键" )
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    public Long id;
    /**
     * 控制器地址
     */
    @Schema(description = "控制器地址" )
    public String rtuAddr;
    /**
     * 取水编号
     */
    @Schema(description = "取水口编号")
    private String intakeNum;
    /**
     * 升级是否结束
     */
    @Schema(description = "升级是否结束" )
    public Byte isOver;
    /**
     * 升级是否结束
     */
    @Schema(description = "升级是否结束" )
    @TableField(exist = false)
    public String isOverStr;
    /**
     * 升级状态
     */
    @Schema(description = "升级状态" )
    public Integer ugState;
    /**
     * 升级状态
     */
    @Schema(description = "升级状态" )
    public String ugStateStr;
    /**
     * 升级结束时间
     */
    @Schema(description = "升级结束时间" )
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:SS")
    public Integer overDt;
    /**
     * 无参数据构造方法
     */
    public VoUgResult(){
        this.isOver = 0;
    }
}
pipIrr-platform/pipIrr-global/src/main/resources/mapper/UgRtuControllerMapper.xml
@@ -120,6 +120,44 @@
    </where>
  </select>
  <select id="selectControllerUpgradeResultsCount" resultType="java.lang.Long">
    <!--@mbg.generated-->
    select
    count(*)
    from ug_rtu_controller
    <where>
      <if test="taskId != null">
        AND task_id = #{taskId,jdbcType=BIGINT}
      </if>
    </where>
  </select>
  <select id="selectControllerUpgradeResults" resultType="com.dy.pipIrrGlobal.voUg.VoUgResult">
    <!--@mbg.generated-->
    select
    ctb.id as id,
    inTb.name as intakeNum,
    ctb.rtu_addr as rtuAddr,
    ctb.is_over as isOver,
    ctb.ug_state as ugState,
    ctb.over_dt as overDt
    from ug_rtu_controller ctb
    inner join pr_intake inTb on ctb.task_id = inTb.id
    <where>
      <if test="taskId != null">
        AND ctb.task_id = #{taskId,jdbcType=BIGINT}
      </if>
    </where>
    ORDER BY ctb.id ASC
    <trim prefix="limit " >
      <if test="start != null and count != null">
        #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
      </if>
    </trim>
  </select>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
    <!--@mbg.generated-->
    delete from ug_rtu_controller
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/rtuUpgrade/task/QueryUgResultVo.java
New file
@@ -0,0 +1,30 @@
package com.dy.pipIrrBase.rtuUpgrade.task;
import com.dy.common.webUtil.QueryConditionVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
/**
 * @Author: liurunyu
 * @Date: 2024/11/13 16:36
 * @Description
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ToString(callSuper = true)
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Schema(name = "查询升级任务RTU升级情况的条件")
public class QueryUgResultVo extends QueryConditionVo {
    @Schema(description = "升级任务id")
    public Long taskId;
    @Schema(description = "取水口编号")
    public String intakeNum;
    @Schema(description = "控制器地址")
    public String rtuAddr;
}
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/rtuUpgrade/task/UgRtuResultCtrl.java
New file
@@ -0,0 +1,70 @@
package com.dy.pipIrrBase.rtuUpgrade.task;
import com.dy.common.aop.SsoAop;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.common.webUtil.ResultCodeMsg;
import com.dy.pipIrrGlobal.pojoRm.UgRtuTask;
import com.dy.pipIrrGlobal.voUg.VoUgResult;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.media.Content;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import io.swagger.v3.oas.annotations.responses.ApiResponses;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
 * @Author: liurunyu
 * @Date: 2024/11/13 16:10
 * @Description
 */
@Slf4j
@Tag(name = "RTU升级结果", description = "RTU升级结果")
@RestController
@RequestMapping(path = "ugRtuResult")
@SuppressWarnings("unchecked")
//java版本越高,对泛型约束越严,所以配置SuppressWarnings("unchecked")
public class UgRtuResultCtrl {
    private UgRtuResultSv sv;
    @Autowired
    private void setSv(UgRtuResultSv sv) { this.sv = sv; }
    /**
     * 客户端分页查询一个升级任务的所有控制器
     * @return 一些RTU升级任务数据
     */
    @Operation(summary = "分页查询一个升级任务中所有控制器升级结查", description = "客户端分页查询一个升级任务中所有控制器升级结查")
    @ApiResponses(value = {
            @ApiResponse(
                    responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
                    description = "返回一些RTU升级任务控制器升级数据(BaseResponse.content:QueryResultVo[{}])",
                    content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE,
                            schema = @Schema(implementation = UgRtuTask.class))}
            )
    })
    @GetMapping(path = "/some")
    @SsoAop()
    public BaseResponse<QueryResultVo<List<VoUgResult>>> some(QueryUgResultVo vo) {
        if (vo.taskId == null) {
            return BaseResponseUtils.buildErrorMsg("升级任务id不能为空");
        }
        try {
            QueryResultVo<List<VoUgResult>> res = this.sv.selectSome(vo);
            return BaseResponseUtils.buildSuccess(res);
        } catch (Exception e) {
            log.error("查询RTU升级任务异常", e);
            return BaseResponseUtils.buildException(e.getMessage());
        }
    }
}
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/rtuUpgrade/task/UgRtuResultSv.java
New file
@@ -0,0 +1,56 @@
package com.dy.pipIrrBase.rtuUpgrade.task;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.pipIrrGlobal.daoRm.UgRtuControllerMapper;
import com.dy.common.softUpgrade.state.UpgradeRtu;
import com.dy.pipIrrGlobal.voUg.VoUgResult;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.common.utils.PojoUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
 * @Author: liurunyu
 * @Date: 2024/11/13 16:11
 * @Description
 */
@Slf4j
@Service
public class UgRtuResultSv {
    @Autowired
    private UgRtuControllerMapper dao ;
    /**
     * 分页查询一个升级任务中所有控制器升级结查
     * @return 控制器升级结查
     */
    public QueryResultVo<List<VoUgResult>> selectSome(QueryUgResultVo queryVo){
        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo) ;
        Long itemTotal = this.dao.selectControllerUpgradeResultsCount(params) ;
        QueryResultVo<List<VoUgResult>> rsVo = new QueryResultVo<>() ;
        rsVo.pageSize = queryVo.pageSize ;
        rsVo.pageCurr = queryVo.pageCurr ;
        rsVo.calculateAndSet(itemTotal, params);
        List<VoUgResult> list = this.dao.selectControllerUpgradeResults(params) ;
        if(list != null && list.size() > 0){
            for(VoUgResult vo : list){
                if(vo.isOver != null && vo.isOver.byteValue() == 1){
                    vo.isOverStr = "是" ;
                }else{
                    vo.isOverStr = "否" ;
                }
                if(vo.ugState != null){
                    vo.ugStateStr = UpgradeRtu.getStateName(vo.ugState) ;
                }
            }
        }
        rsVo.obj = list ;
        return rsVo ;
    }
}