bug修复

This commit is contained in:
guo 2023-11-20 18:15:24 +08:00
parent 53765c735e
commit be0aca9ad2
12 changed files with 89 additions and 18 deletions

View File

@ -37,10 +37,10 @@ public class ProjectVideoConfig implements Serializable {
@ApiModelProperty(value = "项目sn")
private java.lang.String projectSn;
/**
* 视频类型1萤石云2乐橙3ISC4大华5宇视6国标
* 视频类型1萤石云3ISC
*/
@Excel(name = "视频类型1萤石云2乐橙3ISC4大华5宇视6国标", width = 15)
@ApiModelProperty(value = "视频类型1萤石云2乐橙3ISC4大华5宇视6国标")
@Excel(name = "视频类型1萤石云3ISC", width = 15)
@ApiModelProperty(value = "视频类型1萤石云3ISC")
private java.lang.Integer videoType;
/**
* 是否启用1是0否

View File

@ -60,8 +60,8 @@ public class VehiclePositionAlarmController {
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "createTime_begin", value = "报警时间开始", paramType = "query", required = true, dataType = "String"),
@ApiImplicitParam(name = "createTime_end", value = "报警时间结束", paramType = "query", required = true, dataType = "String"),
@ApiImplicitParam(name = "createTime_begin", value = "报警时间开始", paramType = "query", required = false, dataType = "String"),
@ApiImplicitParam(name = "createTime_end", value = "报警时间结束", paramType = "query", required = false, dataType = "String"),
})
@GetMapping(value = "/page")
public Result<IPage<VehiclePositionAlarm>> queryPageList(@ApiIgnore @RequestParam HashMap<String, Object> paramMap) {

View File

@ -54,6 +54,8 @@ public class VehiclePositionDataController {
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "createTime_begin", value = "时间开始", paramType = "query", required = false, dataType = "String"),
@ApiImplicitParam(name = "createTime_end", value = "时间结束", paramType = "query", required = false, dataType = "String"),
})
@GetMapping(value = "/page")
public Result<IPage<VehiclePositionData>> queryPageList(@ApiIgnore @RequestParam HashMap<String, Object> paramMap) {

View File

@ -1,6 +1,7 @@
package com.zhgd.xmgl.modules.vehicleposition.controller;
import com.zhgd.xmgl.modules.vehicleposition.entity.VehiclePositionDev;
import com.zhgd.xmgl.modules.vehicleposition.entity.vo.CountVehiclePositionDevVo;
import com.zhgd.xmgl.modules.vehicleposition.service.IVehiclePositionDevService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@ -182,4 +183,12 @@ public class VehiclePositionDevController {
return mv;
}
@ApiOperation(value = "统计车辆(人员)定位-设备信息", notes = "统计车辆(人员)定位-设备信息", httpMethod = "POST")
@ApiImplicitParams({
@ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "body", required = true, dataType = "String"),
})
@PostMapping(value = "/countVehiclePositionDev")
public Result<CountVehiclePositionDevVo> countVehiclePositionDev(@ApiIgnore @RequestBody HashMap<String, Object> paramMap) {
return Result.success(vehiclePositionDevService.countVehiclePositionDev(paramMap));
}
}

View File

@ -67,6 +67,8 @@ public class VehiclePositionFence implements Serializable {
@Excel(name = "围栏形状(坐标对见用“| ”分隔;经度和纬度用”,“分隔)", width = 15)
@ApiModelProperty(value = "围栏形状(坐标对见用“| ”分隔;经度和纬度用“,“分隔)")
private java.lang.String fenceShape;
@ApiModelProperty(value = "围栏形状json数组")
private java.lang.String fenceShapeArr;
/**
* 项目sn
*/

View File

@ -0,0 +1,11 @@
package com.zhgd.xmgl.modules.vehicleposition.entity.vo;
import lombok.Data;
@Data
public class CountVehiclePositionDevVo {
private Integer count;
private Integer onlineCount;
private Integer offlineCount;
}

View File

@ -5,10 +5,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhgd.xmgl.modules.vehicleposition.entity.VehiclePositionDev;
import com.zhgd.xmgl.modules.vehicleposition.entity.vo.CountVehiclePositionDevVo;
import org.apache.ibatis.annotations.Mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.HashMap;
import java.util.List;
/**
@ -23,4 +25,6 @@ public interface VehiclePositionDevMapper extends BaseMapper<VehiclePositionDev>
IPage<VehiclePositionDev> pageList(Page<VehiclePositionDev> page, @Param(Constants.WRAPPER) QueryWrapper<VehiclePositionDev> queryWrapper);
List<VehiclePositionDev> pageList(@Param(Constants.WRAPPER) QueryWrapper<VehiclePositionDev> queryWrapper);
CountVehiclePositionDevVo countVehiclePositionDev(HashMap<String, Object> paramMap);
}

View File

@ -7,9 +7,31 @@
left join worker_info wi on vpd.worker_info_id = wi.id
left join (select t1.*
from vehicle_position_data t1
join (select max(id) id from vehicle_position_data group by dev_sn) t2 on t1.id=t2.id
join (select max(id) id from vehicle_position_data group by dev_sn) t2
on t1.id = t2.id
) vpd2
on vpd2.dev_sn = vpd.dev_sn
${ew.customSqlSegment}
</select>
<select id="countVehiclePositionDev"
resultType="com.zhgd.xmgl.modules.vehicleposition.entity.vo.CountVehiclePositionDevVo">
select count(*) count,
IFNULL(sum(IFNULL(((case
when round((UNIX_TIMESTAMP(now()) - UNIX_TIMESTAMP(heartbeat_time)) / 60) &lt;= 30
then 1
else 0 end)), 0)),0) onlineCount,
IFNULL(sum(IFNULL(((case
when round((UNIX_TIMESTAMP(now()) - UNIX_TIMESTAMP(heartbeat_time)) / 60) > 30 then 1
else 0 end)), 0)),0) offlineCount
from vehicle_position_dev
where 1 = 1
<if test="devSn != null and devSn != ''">
and dev_sn = #{devSn}
</if>
<if test="projectSn != null and projectSn != ''">
and project_sn = #{projectSn}
</if>
</select>
</mapper>

View File

@ -3,6 +3,7 @@ package com.zhgd.xmgl.modules.vehicleposition.service;
import com.zhgd.xmgl.modules.vehicleposition.entity.VehiclePositionDev;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zhgd.xmgl.modules.vehicleposition.entity.vo.CountVehiclePositionDevVo;
import java.util.HashMap;
import java.util.List;
@ -18,4 +19,6 @@ public interface IVehiclePositionDevService extends IService<VehiclePositionDev>
IPage<VehiclePositionDev> queryPageList(HashMap<String, Object> paramMap);
List<VehiclePositionDev> queryList(HashMap<String, Object> paramMap);
CountVehiclePositionDevVo countVehiclePositionDev(HashMap<String, Object> paramMap);
}

View File

@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.xmgl.modules.vehicleposition.entity.VehiclePositionDev;
import com.zhgd.xmgl.modules.vehicleposition.entity.vo.CountVehiclePositionDevVo;
import com.zhgd.xmgl.modules.vehicleposition.mapper.VehiclePositionDataMapper;
import com.zhgd.xmgl.modules.vehicleposition.mapper.VehiclePositionDevMapper;
import com.zhgd.xmgl.modules.vehicleposition.service.IVehiclePositionDevService;
@ -16,6 +17,7 @@ import com.zhgd.xmgl.util.RefUtil;
import org.apache.commons.collections.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import reactor.core.publisher.Mono;
import java.util.Date;
import java.util.HashMap;
@ -47,6 +49,11 @@ public class VehiclePositionDevServiceImpl extends ServiceImpl<VehiclePositionDe
return dealList(baseMapper.pageList(queryWrapper));
}
@Override
public CountVehiclePositionDevVo countVehiclePositionDev(HashMap<String, Object> paramMap) {
return baseMapper.countVehiclePositionDev(paramMap);
}
private QueryWrapper<VehiclePositionDev> getQueryWrapper(HashMap<String, Object> paramMap) {
String alias = "vpd.";
QueryWrapper<VehiclePositionDev> queryWrapper = QueryGenerator.initPageQueryWrapper(VehiclePositionDev.class, paramMap, alias);

View File

@ -119,7 +119,7 @@ public class VideoItemServiceImpl extends ServiceImpl<VideoItemMapper, VideoItem
@Override
public void updateVideoItem(VideoItem videoItem) {
ProjectVideoConfig projectVideoConfig = projectVideoConfigMapper.selectById(videoItem.getVideoId());
if (projectVideoConfig.getVideoType() != 2) {
if (projectVideoConfig.getVideoType() == 3) {
QueryWrapper<VideoItem> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(VideoItem::getVideoId, videoItem.getVideoId())
.eq(VideoItem::getSerialNumber, videoItem.getSerialNumber())
@ -128,7 +128,18 @@ public class VideoItemServiceImpl extends ServiceImpl<VideoItemMapper, VideoItem
if (count > 0) {
throw new OpenAlertException(MessageUtil.get("serialNumberExistErr"));
}
} else if (projectVideoConfig.getVideoType() == 1) {
QueryWrapper<VideoItem> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(VideoItem::getVideoId, videoItem.getVideoId())
.eq(VideoItem::getChannelId, videoItem.getChannelId())
.eq(VideoItem::getSerialNumber, videoItem.getSerialNumber())
.ne(VideoItem::getItemId, videoItem.getItemId());
int count = videoItemMapper.selectCount(queryWrapper);
if (count > 0) {
throw new OpenAlertException(MessageUtil.get("serialNumberExistErr"));
}
}
videoItemMapper.updateById(videoItem);
}
@ -140,16 +151,16 @@ public class VideoItemServiceImpl extends ServiceImpl<VideoItemMapper, VideoItem
}
checkBindOther(videoItem);
ProjectVideoConfig projectVideoConfig = projectVideoConfigMapper.selectById(videoItem.getVideoId());
if (projectVideoConfig.getVideoType() == 1) {
String accessToken = YsVideoUtil.getToken(projectVideoConfig.getAppId(), projectVideoConfig.getAppSecret());
Map<String, Object> temp = YsVideoUtil.getVideoInfo(projectVideoConfig.getAppId(), projectVideoConfig.getAppSecret(), videoItem.getSerialNumber(), accessToken);
if (temp != null && temp.size() > 0) {
boolean falg = YsVideoUtil.deleteVideo(projectVideoConfig.getAppId(), projectVideoConfig.getAppSecret(), videoItem.getSerialNumber(), accessToken);
if (!falg) {
throw new OpenAlertException(MessageUtil.get("failErr"));
}
}
}
//if (projectVideoConfig.getVideoType() == 1) {
// String accessToken = YsVideoUtil.getToken(projectVideoConfig.getAppId(), projectVideoConfig.getAppSecret());
// Map<String, Object> temp = YsVideoUtil.getVideoInfo(projectVideoConfig.getAppId(), projectVideoConfig.getAppSecret(), videoItem.getSerialNumber(), accessToken);
// if (temp != null && temp.size() > 0) {
// boolean falg = YsVideoUtil.deleteVideo(projectVideoConfig.getAppId(), projectVideoConfig.getAppSecret(), videoItem.getSerialNumber(), accessToken);
// if (!falg) {
// throw new OpenAlertException(MessageUtil.get("failErr"));
// }
// }
//}
videoItemMapper.deleteById(itemId);
}

View File

@ -132,7 +132,7 @@ public class WorkerInfoController {
@ApiImplicitParam(name = "teamId", value = "班组ID", paramType = "query", required = false, dataType = "String"),
@ApiImplicitParam(name = "departmentId", value = "部门ID", paramType = "query", required = false, dataType = "String"),
@ApiImplicitParam(name = "inserviceType", value = "在职状态 1在职 2离职", paramType = "query", required = false, dataType = "String"),
@ApiImplicitParam(name = "personType", value = "人员类型 1、劳务人员 2、管理人员", paramType = "query", required = true, dataType = "String"),
@ApiImplicitParam(name = "personType", value = "人员类型 1、劳务人员 2、管理人员 3、临时人员", paramType = "query", required = true, dataType = "String"),
@ApiImplicitParam(name = "projectSn", value = "项目SN", paramType = "query", required = true, dataType = "String"),
@ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"),