shenyijian
2024-06-13 502a46d9f79f3a2e6ba8bf8c90b71c0c8ebf4815
Merge remote-tracking branch 'origin/jtdev' into jtdev
7 files modified
12 files added
724 ■■■■■ changed files
skjcmanager/skjcmanager-common/src/main/java/cn/gistack/common/utils/IdUtils.java 21 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/hk/HkStaffGaugeMonClientFallback.java 18 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/hk/IHkStaffGaugeMonClient.java 26 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/constant/HkConstant.java 4 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/controller/HkStaffGaugeMonController.java 114 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/entity/HkEvent.java 2 ●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/entity/HkStaffGaugeMon.java 157 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/feign/HkStaffGaugeMonClient.java 33 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/mapper/HkStaffGaugeMonMapper.java 21 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/mapper/HkStaffGaugeMonMapper.xml 55 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/service/HkStaffGaugeMonService.java 36 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/service/impl/HkStaffGaugeMonServiceImpl.java 105 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/util/GetCameraUtils.java 20 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/vo/HkStaffGaugeMonVO.java 53 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztdw/mapper/DwsWaterResZEightDetailAllMapper.xml 4 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztdw/service/impl/DwsResFormDiServiceImpl.java 4 ●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbResGeneralInvestigation.java 6 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbProjectMapper.xml 2 ●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/HkStaffGaugeMonXxlJob.java 43 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-common/src/main/java/cn/gistack/common/utils/IdUtils.java
New file
@@ -0,0 +1,21 @@
package cn.gistack.common.utils;
import java.util.UUID;
public class IdUtils {
    /**
     * 随机生成36位id
     * @return
     */
    public static String getIdBy36(){
        //生成uuid
        String randomId = UUID.randomUUID().toString();
        String trim = randomId.replaceAll("-", "");
        //再拼接4位
        long l = System.currentTimeMillis();
        String time = String.valueOf(l);
        String subTime = time.substring(time.length() - 4);
        return trim + subTime;
    }
}
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/hk/HkStaffGaugeMonClientFallback.java
New file
@@ -0,0 +1,18 @@
package cn.gistack.sm.hk;
import org.springframework.stereotype.Component;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION: 海康设备水尺监测
 * @USER: zhongrj
 * @DATE: 2024/06/05
 */
@Component
public class HkStaffGaugeMonClientFallback implements IHkStaffGaugeMonClient {
    @Override
    public void insertHkStaffGaugeMonInfo() {
    }
}
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/hk/IHkStaffGaugeMonClient.java
New file
@@ -0,0 +1,26 @@
package cn.gistack.sm.hk;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION: 海康设备水尺监测
 * @USER: zhongrj
 * @DATE: 2024/06/05
 */
@FeignClient(
    value = "blade-sm",
    fallback = HkStaffGaugeMonClientFallback.class
)
public interface IHkStaffGaugeMonClient {
    String API_PREFIX = "/client";
    String INSERT_HK_STAFF_GAUGE_MON = API_PREFIX + "/insertHkStaffGaugeMonInfo";
    @GetMapping(INSERT_HK_STAFF_GAUGE_MON)
    void insertHkStaffGaugeMonInfo();
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/constant/HkConstant.java
@@ -163,6 +163,10 @@
     */
    public static final String regionNodesByParamsURLs = "/api/irds/v2/region/nodesByParams";
    /**
     * 查询水尺监测信息
     */
    public static final String waterGaugeURLs = "/api/v1/waterGauge/list";
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/controller/HkStaffGaugeMonController.java
New file
@@ -0,0 +1,114 @@
package cn.gistack.sm.hk.controller;
import cn.gistack.sm.hk.entity.HkStaffGaugeMon;
import cn.gistack.sm.hk.service.HkStaffGaugeMonService;
import cn.gistack.sm.hk.vo.HkStaffGaugeMonVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springframework.web.bind.annotation.*;
/**
 * @author zhongrj
 * @Description: 水尺监测
 * @date 2024-06-05
 */
@Slf4j
@Api(tags = "水尺监测")
@RestController
@RequestMapping("/hk/hkStaffGaugeMon")
@AllArgsConstructor
public class HkStaffGaugeMonController {
    private final HkStaffGaugeMonService hkStaffGaugeMonService;
    /**
     * 分页列表查询
     *
     * @param hkStaffGaugeMon
     * @return
     */
    @ApiOperation(value="水尺监测-分页列表查询", notes="水尺监测-分页列表查询")
    @GetMapping(value = "/list")
    public R queryPageList(HkStaffGaugeMon hkStaffGaugeMon, Query query) {
        IPage<HkStaffGaugeMon> pageList = hkStaffGaugeMonService.page(Condition.getPage(query), Condition.getQueryWrapper(hkStaffGaugeMon));
        return R.data(pageList);
    }
    /**
     * 自定义分页列表查询
     * @param query
     * @param hkStaffGaugeMon
     * @return
     */
    @ApiOperation(value="水尺监测-自定义分页列表查询", notes="水尺监测-自定义分页列表查询")
    @GetMapping(value = "/page")
    public R selectAlarmPage(HkStaffGaugeMonVO hkStaffGaugeMon, Query query) {
        return R.data(hkStaffGaugeMonService.selectHkStaffGaugeMonPage(Condition.getPage(query),hkStaffGaugeMon));
    }
    /**
     * 添加
     *
     * @param hkStaffGaugeMon
     * @return
     */
    @ApiOperation(value="水尺监测-添加", notes="水尺监测-添加")
    @PostMapping(value = "/add")
    public R add(@RequestBody HkStaffGaugeMon hkStaffGaugeMon) {
        return R.data(hkStaffGaugeMonService.save(hkStaffGaugeMon));
    }
    /**
     * 编辑
     *
     * @param hkStaffGaugeMon
     * @return
     */
    @ApiOperation(value="水尺监测-编辑", notes="水尺监测-编辑")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
    public R edit(@RequestBody HkStaffGaugeMon hkStaffGaugeMon) {
        return R.data(hkStaffGaugeMonService.updateById(hkStaffGaugeMon));
    }
    /**
     * 通过id查询
     *
     * @param id
     * @return
     */
    @ApiOperation(value="水尺监测-通过id查询", notes="水尺监测-通过id查询")
    @GetMapping(value = "/queryById")
    public R queryById(@RequestParam(name="id",required=true) String id) {
        HkStaffGaugeMon hkStaffGaugeMon = hkStaffGaugeMonService.getById(id);
        return R.data(hkStaffGaugeMon);
    }
    /**
     * 定时读取
     * @return
     */
    @GetMapping(value = "/insert")
    public void insert() {
        // 保存数据
        hkStaffGaugeMonService.saveHkStaffGaugeMonInfo();
    }
    /**
     * 定时读取
     * @return
     */
    @PostMapping(value = "/test")
    public void insert(@RequestBody String data) {
        // 保存数据
        hkStaffGaugeMonService.saveHkStaffGaugeMonInfo(data);
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/entity/HkEvent.java
@@ -19,7 +19,7 @@
 */
@Data
@TableName(value = "sm_hk_event")
@ApiModel(value = "sm_hk_event对象", description = "考核方案")
@ApiModel(value = "sm_hk_event对象", description = "海康视频事件")
public class HkEvent implements Serializable {
    /**
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/entity/HkStaffGaugeMon.java
New file
@@ -0,0 +1,157 @@
package cn.gistack.sm.hk.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
 * 海康水尺监测
 *
 * @author zhongrj
 * @date 2024-06-05
 */
@Data
@TableName(value = "sm_hk_staff_gauge_mon")
@ApiModel(value = "sm_hk_staff_gauge_mon对象", description = "水尺监测")
public class HkStaffGaugeMon implements Serializable {
    /**
     * 主键id
     */
    @TableId(value = "id")
    private String id;
    /**
     * 监测id
     */
    @ApiModelProperty(value = "监测id")
    private String gaugeMonId;
    /**
     * 水尺名称
     */
    @ApiModelProperty(value = "水尺名称")
    private String waterGaugeName;
    /**
     * 水尺编号
     */
    @ApiModelProperty(value = "水尺编号")
    private String waterGaugeCode;
    /**
     * 设备编号
     */
    @ApiModelProperty(value = "设备编号")
    private String cameraIndexCode;
    /**
     * 设备名称
     */
    @ApiModelProperty(value = "设备名称")
    private String cameraName;
    /**
     * 监测位置
     */
    @ApiModelProperty(value = "监测位置")
    private String location;
    /**
     * 原始的比对的图片
     */
    @ApiModelProperty(value = "原始的比对的图片")
    private String markPic;
    /**
     * 虚拟水尺的坐标
     */
    @ApiModelProperty(value = "虚拟水尺的坐标")
    private String markData;
    /**
     * 当前虚拟水尺图片
     */
    @ApiModelProperty(value = "当前虚拟水尺图片")
    private String currentPic;
    /**
     * 水位高度
     */
    @ApiModelProperty(value = "水位高度")
    private Double alarmHeight;
    /**
     * 备注1
     */
    @ApiModelProperty(value = "备注1")
    private String remark1;
    /**
     * 备注2
     */
    @ApiModelProperty(value = "备注2")
    private String remark2;
    /**
     * 备注3
     */
    @ApiModelProperty(value = "备注3")
    private String remark3;
    /**
     * 备注4
     */
    @ApiModelProperty(value = "备注4")
    private String remark4;
    /**
     * 备注5
     */
    @ApiModelProperty(value = "备注5")
    private String remark5;
    /**
     * 设置更新时间
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "设置更新时间")
    private Date configUpdateTime;
    /**
     * 创建时间
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time",fill = FieldFill.INSERT)
    private Date createTime;
    /**
     * 数据分析上报时间
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "数据分析上报时间")
    @TableField(value = "update_time")
    private Date updateTime;
    /**
     * 系统创建时间
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "系统创建时间")
    @TableField(value = "sys_create_time",fill = FieldFill.INSERT)
    private Date sysCreateTime;
    /**
     * 删除状态
     */
    @ApiModelProperty(value = "删除状态")
    private Integer deleteStatus;
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/feign/HkStaffGaugeMonClient.java
New file
@@ -0,0 +1,33 @@
package cn.gistack.sm.hk.feign;
import cn.gistack.sm.hk.IHkStaffGaugeMonClient;
import cn.gistack.sm.hk.service.HkStaffGaugeMonService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.tenant.annotation.NonDS;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION: 海康设备水尺监测
 * @USER: zhongrj
 * @DATE: 2024/06/05
 */
@NonDS
@ApiIgnore
@RestController
@AllArgsConstructor
@Slf4j
public class HkStaffGaugeMonClient implements IHkStaffGaugeMonClient {
    private final HkStaffGaugeMonService hkStaffGaugeMonService;
    /**
     * 保存水尺监测数据
     */
    @Override
    public void insertHkStaffGaugeMonInfo() {
        hkStaffGaugeMonService.saveHkStaffGaugeMonInfo();
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/mapper/HkStaffGaugeMonMapper.java
New file
@@ -0,0 +1,21 @@
package cn.gistack.sm.hk.mapper;
import cn.gistack.sm.hk.entity.HkStaffGaugeMon;
import cn.gistack.sm.hk.vo.HkStaffGaugeMonVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface HkStaffGaugeMonMapper extends BaseMapper<HkStaffGaugeMon> {
    /**
     * 自定义分页列表查询
     * @param page
     * @param hkStaffGaugeMon
     * @return
     */
    List<HkStaffGaugeMonVO> selectHkStaffGaugeMonPage(@Param("page") IPage<HkStaffGaugeMonVO> page,
                                                      @Param("hkStaffGaugeMon")  HkStaffGaugeMonVO hkStaffGaugeMon);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/mapper/HkStaffGaugeMonMapper.xml
New file
@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.gistack.sm.hk.mapper.HkStaffGaugeMonMapper">
    <!--自定义分页列表查询-->
    <select id="selectHkStaffGaugeMonPage" resultType="cn.gistack.sm.hk.vo.HkStaffGaugeMonVO">
        select
        shsgm.*,
        awb."res_guid" as resGuid,
        a."name" as resName,
        case when b."ad_grad" = 4 THEN b."ad_name"
        ELSE NULL END AS townName,
        case when b."ad_grad" = 3 THEN b."ad_name"
        when c."ad_grad" = 3 THEN C."ad_name"
        END AS countyName,
        case when b."ad_grad" = 2 THEN b."ad_name"
        when c."ad_grad" = 2 THEN c."ad_name"
        ELSE d."ad_name" END AS cityName
        from YWXT.sm_hk_staff_gauge_mon shsgm
        left join (
            select "res_guid","video_guid" from SJZT_MD."att_wmst_base"
            union all
            select "regionindexcode" as "res_guid","gbindexcode" as "video_guid" from SJZT_ODS."haik_gb_wmst_base"
        )
        awb on awb."video_guid" = shsgm.camera_index_code
        left join SJZT_MD."att_res_base" a on a."guid" = awb."res_guid"
        left join SJZT_MD."att_ad_base" b on b."guid" = a."interior_ad_guid"
        LEFT JOIN SJZT_MD."att_ad_base" c ON b."p_ad_code" = c."guid"
        LEFT JOIN SJZT_MD."att_ad_base" d ON c."p_ad_code" = d."guid"
        where 1 =1
        <if test="hkStaffGaugeMon.resGuid!=null and hkStaffGaugeMon.resGuid!=''">
            and awb."res_guid" = #{hkStaffGaugeMon.resGuid}
        </if>
        <if test="hkStaffGaugeMon.cameraName!=null and hkStaffGaugeMon.cameraName!=''">
            and shsgm.camera_name like concat('%',#{hkStaffGaugeMon.cameraName},'%')
        </if>
        <if test="hkStaffGaugeMon.resName!=null and hkStaffGaugeMon.resName!=''">
            and a."name" like concat('%',#{hkStaffGaugeMon.resName},'%')
        </if>
        <if test="hkStaffGaugeMon.startTime !=null and hkStaffGaugeMon.startTime !=''">
            AND DATE_FORMAT(shsgm.update_time,'%Y-%m-%d') &gt;= #{hkStaffGaugeMon.startTime}
        </if>
        <if test="hkStaffGaugeMon.endTime !=null and hkStaffGaugeMon.endTime !=''">
            AND DATE_FORMAT(shsgm.update_time,'%Y-%m-%d') &lt;= #{hkStaffGaugeMon.endTime}
        </if>
        <if test="hkStaffGaugeMon.sendTime !=null and hkStaffGaugeMon.sendTime !=''">
            AND DATE_FORMAT(shsgm.update_time,'%Y-%m-%d') &lt;= #{hkStaffGaugeMon.sendTime}
        </if>
        <if test="hkStaffGaugeMon.adCode != null and hkStaffGaugeMon.adCode !='' and hkStaffGaugeMon.adCode !='420000000000'">
            AND (b."ad_code" = #{hkStaffGaugeMon.adCode} or c."ad_code" =#{hkStaffGaugeMon.adCode} or d."ad_code" = #{hkStaffGaugeMon.adCode})
        </if>
        order by shsgm.id desc,shsgm.update_time desc
    </select>
</mapper>
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/service/HkStaffGaugeMonService.java
New file
@@ -0,0 +1,36 @@
package cn.gistack.sm.hk.service;
import cn.gistack.sm.hk.entity.HkStaffGaugeMon;
import cn.gistack.sm.hk.vo.HkStaffGaugeMonVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * 水尺监测服务接口层
 * @author zhongrj
 * @date 2024-06-05
 */
public interface HkStaffGaugeMonService extends IService<HkStaffGaugeMon> {
    /**
     * 自定义分页列表查询
     * @param page
     * @param hkStaffGaugeMon
     * @return
     */
    IPage<HkStaffGaugeMonVO> selectHkStaffGaugeMonPage(IPage<HkStaffGaugeMonVO> page, HkStaffGaugeMonVO hkStaffGaugeMon);
    /**
     * 保存水尺监测数据
     * @return
     */
    void saveHkStaffGaugeMonInfo();
    /**
     * 测试保存水尺监测数据
     * @param data
     * @return
     */
    void saveHkStaffGaugeMonInfo(String data);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/service/impl/HkStaffGaugeMonServiceImpl.java
New file
@@ -0,0 +1,105 @@
package cn.gistack.sm.hk.service.impl;
import cn.gistack.common.utils.IdUtils;
import cn.gistack.sm.hk.entity.HkEvent;
import cn.gistack.sm.hk.entity.HkStaffGaugeMon;
import cn.gistack.sm.hk.mapper.HkStaffGaugeMonMapper;
import cn.gistack.sm.hk.service.HkStaffGaugeMonService;
import cn.gistack.sm.hk.util.GetCameraUtils;
import cn.gistack.sm.hk.vo.HkStaffGaugeMonVO;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import java.util.Map;
import static cn.gistack.sm.hk.constant.HkConstant.waterGaugeURLs;
/**
 * 水尺监测服务接口实现层
 * @author zhongrj
 * @date 2024-06-05
 */
@Service
@Slf4j
public class HkStaffGaugeMonServiceImpl extends ServiceImpl<HkStaffGaugeMonMapper, HkStaffGaugeMon> implements HkStaffGaugeMonService {
    /**
     * 自定义分页列表查询
     * @param page
     * @param hkStaffGaugeMon
     * @return
     */
    @Override
    public IPage<HkStaffGaugeMonVO> selectHkStaffGaugeMonPage(IPage<HkStaffGaugeMonVO> page, HkStaffGaugeMonVO hkStaffGaugeMon) {
        return page.setRecords(baseMapper.selectHkStaffGaugeMonPage(page,hkStaffGaugeMon));
    }
    /**
     * 保存数据
     * @return
     */
    @Override
    public void saveHkStaffGaugeMonInfo() {
        // 解析json
        String result = GetCameraUtils.getStaffGaugeMon(3, waterGaugeURLs);
        // 保存
        saveHkStaffGaugeMonInfo(result);
    }
    /**
     * 保存数据
     * @param result
     * @return
     */
    @Override
    public void saveHkStaffGaugeMonInfo(String result) {
        // 解析json
        log.info("水尺监测信息:" + result);
        JSONObject jsonObject = JSONObject.parseObject(result);
        JSONArray jsonArray = jsonObject.getJSONArray("data");
        if (null!= jsonArray && jsonArray.size()>0) {
            for (int i = 0; i < jsonArray.size(); i++) {
                String cameraIndexCode = jsonArray.getJSONObject(i).getString("cameraIndexCode");
                Date updateTime = jsonArray.getJSONObject(i).getDate("updateTime");
                // 查询去重
                QueryWrapper<HkStaffGaugeMon> wrapper = new QueryWrapper<>();
                wrapper.eq("camera_index_code",cameraIndexCode).eq("update_time",updateTime);
                List<HkStaffGaugeMon> list = list(wrapper);
                if (list.size()==0) {
                    HkStaffGaugeMon hkStaffGaugeMon = new HkStaffGaugeMon();
                    // 设置数据
                    hkStaffGaugeMon.setId(IdUtils.getIdBy36());
                    hkStaffGaugeMon.setGaugeMonId(jsonArray.getJSONObject(i).getString("id"));
                    hkStaffGaugeMon.setWaterGaugeName(jsonArray.getJSONObject(i).getString("waterGaugeName"));
                    hkStaffGaugeMon.setWaterGaugeCode(jsonArray.getJSONObject(i).getString("waterGaugeCode"));
                    hkStaffGaugeMon.setCameraIndexCode(jsonArray.getJSONObject(i).getString("cameraIndexCode"));
                    hkStaffGaugeMon.setCameraName(jsonArray.getJSONObject(i).getString("cameraName"));
                    hkStaffGaugeMon.setLocation(jsonArray.getJSONObject(i).getString("location"));
                    hkStaffGaugeMon.setMarkPic(jsonArray.getJSONObject(i).getString("markPic"));
                    hkStaffGaugeMon.setMarkData(jsonArray.getJSONObject(i).getString("markData"));
                    hkStaffGaugeMon.setCreateTime(jsonArray.getJSONObject(i).getDate("createTime"));
                    hkStaffGaugeMon.setConfigUpdateTime(jsonArray.getJSONObject(i).getDate("configUpdateTime"));
                    hkStaffGaugeMon.setUpdateTime(jsonArray.getJSONObject(i).getDate("updateTime"));
                    hkStaffGaugeMon.setDeleteStatus(jsonArray.getJSONObject(i).getInteger("deleteStatus"));
                    hkStaffGaugeMon.setCurrentPic(jsonArray.getJSONObject(i).getString("currentPic"));
                    hkStaffGaugeMon.setAlarmHeight(jsonArray.getJSONObject(i).getDouble("alarmHeight"));
                    hkStaffGaugeMon.setRemark1(jsonArray.getJSONObject(i).getString("remark1"));
                    hkStaffGaugeMon.setRemark2(jsonArray.getJSONObject(i).getString("remark2"));
                    hkStaffGaugeMon.setRemark3(jsonArray.getJSONObject(i).getString("remark3"));
                    hkStaffGaugeMon.setRemark4(jsonArray.getJSONObject(i).getString("remark4"));
                    hkStaffGaugeMon.setRemark5(jsonArray.getJSONObject(i).getString("remark5"));
                    hkStaffGaugeMon.setSysCreateTime(new Date());
                    // 保存
                    save(hkStaffGaugeMon);
                }
            }
        }
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/util/GetCameraUtils.java
@@ -370,6 +370,26 @@
        return common(null==eventVO.getType()?1:eventVO.getType(),url, body);
    }
    /**
     * 调用水尺检测信息
     * @param type
     * @param url
     * @return
     */
    public static String getStaffGaugeMon(Integer type, String url) {
        /**
         * 组装请求参数
         */
        JSONObject jsonBody = new JSONObject();
        String body = jsonBody.toJSONString();
        /**
         * 调用接口并返回数据
         * post请求application/json类型参数;
         */
        return common(null==type?1:type,url, body);
    }
//    public static void main(String[] args) {
//
//        String previewURL = GetCameraPreviewURL(1, HkConstant.previewURLs,
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/vo/HkStaffGaugeMonVO.java
New file
@@ -0,0 +1,53 @@
package cn.gistack.sm.hk.vo;
import cn.gistack.sm.hk.entity.HkStaffGaugeMon;
import lombok.Data;
import java.io.Serializable;
@Data
public class HkStaffGaugeMonVO extends HkStaffGaugeMon implements Serializable {
    /**
     * 开始时间
     */
    private String startTime;
    /**
     * 结束时间
     */
    private String endTime;
    /**
     * 发送时间
     */
    private String sendTime;
    /**
     * 水库编号
     */
    private String resGuid;
    /**
     * 水库名称
     */
    private String resName;
    /**
     * 市州名称
     */
    private String cityName;
    /**
     * 区县
     */
    private String countyName;
    /**
     * 乡镇
     */
    private String townName;
    /**
     * 区域编号
     */
    private String adCode;
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztdw/mapper/DwsWaterResZEightDetailAllMapper.xml
@@ -7,10 +7,10 @@
        UPDATE SJZT_DW."dws_water_res_z_eight_detail_all" SET
            <if test="entity.rz != null and entity.rz !='' ">
                "rz" = #{entity.rz},
                "rz" = #{entity.rz}
            </if>
            <if test="entity.lowZ != null and entity.lowZ !='' ">
                "low_z" = #{entity.lowZ}
                ,"low_z" = #{entity.lowZ}
            </if>
        WHERE 1=1
            <if test="entity.isTb != null and entity.isTb != ''">
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztdw/service/impl/DwsResFormDiServiceImpl.java
@@ -42,6 +42,7 @@
    private IDsmSpgSpprmpService dsmSpgSpprmpService;
    @Override
    @Transactional
    public void importDbPersonData(List<DbExcel> data, String resGuid,String ch) {
        //获取行政区划
@@ -61,7 +62,7 @@
        List<DsmSpgSpqnmp> dsmSpgSpqnmpList = dsmSpgSpqnmpService.getList(paramSl);
        data.forEach(dbExcel->{
            dbExcel.setAvgValue(dbExcel.getAvgValue().replace(",",","));
            if (StringUtil.isBlank(dbExcel.getRz())){
                dbExcel.setRz("");
            }
@@ -200,6 +201,7 @@
                }
            }
        }catch (Exception e){
            e.printStackTrace();
            throw new RuntimeException("表格渗压数据个数超过当前水库断面测点个数");
        }
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbResGeneralInvestigation.java
@@ -101,6 +101,12 @@
    @ApiModelProperty(value = "部位")
    @TableField(value = "\"part_place\"", fill = FieldFill.UPDATE)
    private String partPlace;
    /**
     * 部位
     */
    @ApiModelProperty(value = "部位描述")
    @TableField(value = "\"part_place_info\"", fill = FieldFill.UPDATE)
    private String partPlaceInfo;
    /**
     * 普查面积
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbProjectMapper.xml
@@ -67,7 +67,7 @@
        <if test="vo.endTime!=null and vo.endTime!=''">
            and tb."check_date" &lt;= #{vo.endTime}
        </if>
        order by city_code,county_code asc
        order by CAST(city_code AS number) asc,CAST(county_code AS number) asc,CAST(guid AS number) desc
    </select>
    <resultMap id="dto" type="cn.gistack.sm.sjztmd.dto.TbProjectDTO">
skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/HkStaffGaugeMonXxlJob.java
New file
@@ -0,0 +1,43 @@
package cn.gistack.job.executor.jobhandler;
import cn.gistack.sm.hk.IHkStaffGaugeMonClient;
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.annotation.XxlJob;
import com.xxl.job.core.log.XxlJobLogger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION: 海康设备水尺监测
 * @USER: zhongrj
 * @DATE: 2024/06/05
 */
@Component
public class HkStaffGaugeMonXxlJob {
    @Autowired
    private IHkStaffGaugeMonClient hkStaffGaugeMonClient;
    /**
     * 海康设备水尺监测
     * @return
     */
    @XxlJob("insertHkStaffGaugeMonInfo")
    public ReturnT<String> insertHkStaffGaugeMonInfo(String param) {
        XxlJobLogger.log("开始执行任务...");
        // 海康设备水尺监测任务
        ExecutorService executorService = Executors.newSingleThreadExecutor();
        executorService.submit(() -> {
            // 这里是你的异步任务逻辑
            hkStaffGaugeMonClient.insertHkStaffGaugeMonInfo();
        });
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
}