2021与蓝度共同重构项目,服务端
liuhaonan
2022-01-07 9d25f1f915995603754646933934da945eb138d2
功能完善
已修改4个文件
86 ■■■■■ 文件已修改
dao/src/main/java/com/sandu/ximon/dao/domain/Pole.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
dao/src/main/resources/mapper/PoleMapper.xml 44 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
dao/src/main/java/com/sandu/ximon/dao/domain/Pole.java
@@ -33,6 +33,11 @@
    private String poleName;
    /**
     * 设备类型  01 是CAT1 00 是MQTT串口主板
     */
    private Integer deviceType;
    /**
     * 客户id
     */
    private Long clientId;
dao/src/main/resources/mapper/PoleMapper.xml
@@ -5,30 +5,30 @@
<mapper namespace="com.sandu.ximon.dao.mapper.PoleMapper">
    <resultMap id="BaseResultMap" type="com.sandu.ximon.dao.domain.Pole">
        <id property="id" column="id" jdbcType="BIGINT"/>
        <result property="poleCode" column="pole_code" jdbcType="BIGINT"/>
        <result property="poleName" column="pole_name" jdbcType="VARCHAR"/>
        <result property="clientId" column="client_id" jdbcType="BIGINT"/>
        <result property="province" column="province" jdbcType="VARCHAR"/>
        <result property="city" column="city" jdbcType="VARCHAR"/>
        <result property="region" column="region" jdbcType="VARCHAR"/>
        <result property="address" column="address" jdbcType="VARCHAR"/>
        <result property="lon" column="lon" jdbcType="DECIMAL"/>
        <result property="lat" column="lat" jdbcType="DECIMAL"/>
        <result property="deviceCode" column="device_code" jdbcType="VARCHAR"/>
        <result property="onLineState" column="on_line_state" jdbcType="VARCHAR"/>
        <result property="bindingCount" column="binding_count" jdbcType="INTEGER"/>
        <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
        <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
            <id property="id" column="id" jdbcType="BIGINT"/>
            <result property="poleCode" column="pole_code" jdbcType="BIGINT"/>
            <result property="poleName" column="pole_name" jdbcType="VARCHAR"/>
            <result property="deviceType" column="device_type" jdbcType="INTEGER"/>
            <result property="clientId" column="client_id" jdbcType="BIGINT"/>
            <result property="province" column="province" jdbcType="VARCHAR"/>
            <result property="city" column="city" jdbcType="VARCHAR"/>
            <result property="region" column="region" jdbcType="VARCHAR"/>
            <result property="address" column="address" jdbcType="VARCHAR"/>
            <result property="lon" column="lon" jdbcType="DECIMAL"/>
            <result property="lat" column="lat" jdbcType="DECIMAL"/>
            <result property="deviceCode" column="device_code" jdbcType="VARCHAR"/>
            <result property="onLineState" column="on_line_state" jdbcType="VARCHAR"/>
            <result property="bindingCount" column="binding_count" jdbcType="INTEGER"/>
            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
            <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
    </resultMap>
    <sql id="Base_Column_List">
        id
        ,pole_code,pole_name,
        client_id,province,city,
        region,address,lon,
        lat,device_code,
         binding_count,on_line_state,
        create_time,update_time
        id,pole_code,pole_name,
        device_type,client_id,province,
        city,region,address,
        lon,lat,device_code,
        on_line_state,binding_count,create_time,
        update_time
    </sql>
</mapper>
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java
@@ -51,7 +51,7 @@
    @GetMapping("/list")
    public ResponseVO<Object> listPole(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) {
        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
        LambdaQueryWrapper<Pole> wrapper = Wrappers.lambdaQuery(Pole.class);
        LambdaQueryWrapper<Pole> wrapper = Wrappers.lambdaQuery(Pole.class).orderByDesc(Pole::getId);
        if (StrUtil.isNotBlank(keyword)) {
            wrapper.like(Pole::getPoleCode, keyword)
                    .or(lampPostLambdaQueryWrapper -> {
@@ -73,9 +73,9 @@
    /**
     * 设置三元码
     */
    @PostMapping("/setMac/{poleId}")
    public ResponseVO<Object> setMac(@PathVariable Long poleId) {
        return ResponseUtil.success(poleService.setMac(poleId));
    @PostMapping("/setMac/{baseMac}")
    public ResponseVO<Object> setMac(@PathVariable String baseMac) {
        return ResponseUtil.success(poleService.setMac(baseMac));
    }
    /**
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
@@ -207,14 +207,14 @@
     */
    public boolean setMac(Long poleId) {
        Pole pole = getById(poleId);
        if (pole == null) {
    public boolean setMac(String baseMac) {
        //Pole pole = getById(poleId);
       /* if (pole == null) {
            throw new BusinessException("未找到该灯杆");
        }
        }*/
        boolean setMac = false;
        String baseMac = "baseDevice";
       // String baseMac = "baseDevice";
        A1Frame a1Frame = new A1Frame(A1OrderEnum.REQUEST_READ_DEVICE_UNIQUE_MAC.getCode(), new EmptyRequestInnerFrame());
        CommonFrame commonFrame = MainBoardInvokeSyncService.getInstance()
                .sendRRPC(baseMac, a1Frame);
@@ -225,6 +225,10 @@
        log.info(commonFrame.toString());
        String uniqueMac = a1DeviceMacRespInnerFrame.getMac();
        uniqueMac = uniqueMac.toLowerCase();
        if(uniqueMac.isEmpty()){
            throw new BusinessException("读取设备唯一ID失败!");
        }
        log.info("唯一码{}", uniqueMac);
        // 2  从阿里注册
@@ -277,12 +281,23 @@
                        FrameBuilder.builderA2().innerFrame(new EmptyRequestInnerFrame())
                                .orderType(A2OrderEnum.REQUEST_MAIN_BOARD_RESET.getCode()).build());
        if ("00".equals(rebootFrame.getPayload())) {
            pole.setDeviceCode(uniqueMac);
          //  pole.setDeviceCode(uniqueMac);
            setMac = updateById(pole);
           // setMac = updateById(pole);
            System.out.println("重启成功");
        }
        Pole pole=new Pole();
        String strh = uniqueMac.substring(uniqueMac.length() -2,uniqueMac.length());
        pole.setDeviceCode(strh);
        pole.setPoleName(strh);
        String strm = uniqueMac.substring(0,uniqueMac.length()-2);
        int i = Integer.parseInt(strm);
        pole.setPoleCode(generatePoleCode());
        pole.setDeviceType(i);
        setMac= save(pole);
        return setMac;
    }