安全带接入

This commit is contained in:
pengjie 2024-09-20 16:43:52 +08:00
parent 032e5c9b84
commit 9f995931c2
11 changed files with 59 additions and 24 deletions

View File

@ -172,6 +172,10 @@ public class SafetyHatWSClient {
alarm.setLatitude(yPoint);
alarm.setLongitude(xPoint);
alarm.setFenceId(dev.getFenceId());
alarm.setType(dev.getType());
if (dev.getType() == 2) {
alarm.setAlarmInfo(jo.getString("msg"));
}
try {
SpringContextUtils.getBean(ISafetyHatAlarmService.class).add(alarm);
} catch (Exception e) {

View File

@ -1315,6 +1315,10 @@ public class ParamEnum {
* 血压报警
*/
XYBJ(22, "血压报警"),
/**
* 双钩均未挂接
*/
AQDBJ(27, "双钩均未挂接"),
;
private Integer value;

View File

@ -195,8 +195,8 @@ public class SafetyHatDevController {
@ApiImplicitParam(name = "file", value = "导入文件", paramType = "query", required = true, dataType = "String"),
})
@PostMapping(value = "/importExcelTemplate")
public Result importExcelTemplate(MultipartFile file, String projectSn) throws Exception {
safetyHatDevService.importExcelTemplate(file, projectSn);
public Result importExcelTemplate(MultipartFile file, String projectSn, Integer type) throws Exception {
safetyHatDevService.importExcelTemplate(file, projectSn, type);
return Result.ok();
}

View File

@ -99,6 +99,12 @@ public class SafetyHatAlarm implements Serializable {
@Excel(name = "围栏ID", width = 15)
@ApiModelProperty(value = "围栏ID")
private java.lang.String fenceId;
/**
* 设备类型(1安全帽;2:安全带)
*/
@Excel(name = "设备类型(1安全帽;2:安全带)", width = 15)
@ApiModelProperty(value = "设备类型(1安全帽;2:安全带)")
private java.lang.Integer type;
/**
* 人员名称
*/

View File

@ -89,6 +89,13 @@ public class SafetyHatData implements Serializable {
@ApiModelProperty(value = "是否安全帽平台的数据")
private java.lang.Integer isPlatformData;
/**
* 设备类型(1安全帽;2:安全带)
*/
@Excel(name = "设备类型(1安全帽;2:安全带)", width = 15)
@ApiModelProperty(value = "设备类型(1安全帽;2:安全带)")
private java.lang.Integer type;
/**
* 人员名称
*/

View File

@ -112,6 +112,13 @@ public class SafetyHatDev implements Serializable {
@ApiModelProperty(value = "围栏ID")
private java.lang.String fenceId;
/**
* 设备类型(1安全帽;2:安全带)
*/
@Excel(name = "设备类型(1安全帽;2:安全带)", width = 15)
@ApiModelProperty(value = "设备类型(1安全帽;2:安全带)")
private java.lang.Integer type;
@TableField(exist = false)
private java.lang.String name;
}

View File

@ -73,5 +73,5 @@ public interface ISafetyHatDevService extends IService<SafetyHatDev> {
* @param projectSn
* @throws Exception
*/
void importExcelTemplate(MultipartFile excelFile, String projectSn) throws Exception;
void importExcelTemplate(MultipartFile excelFile, String projectSn, Integer type) throws Exception;
}

View File

@ -82,8 +82,10 @@ public class SafetyHatAlarmServiceImpl extends ServiceImpl<SafetyHatAlarmMapper,
if (dev == null) {
throw new OpenAlertException("设备编号不正确");
}
if (StringUtils.isBlank(safetyHatAlarm.getAlarmInfo())) {
String str = ParamEnum.getStr(ParamEnum.SafetyHatAlarmAlarmType.values(), safetyHatAlarm.getAlarmType());
safetyHatAlarm.setAlarmInfo(str);
}
safetyHatAlarm.setWorkerInfoId(dev.getWorkerInfoId());
safetyHatAlarm.setProjectSn(dev.getProjectSn());
safetyHatAlarm.setId(null);

View File

@ -122,13 +122,15 @@ public class SafetyHatDataServiceImpl extends ServiceImpl<SafetyHatDataMapper, S
safetyHatData.setWorkerInfoId(dev.getWorkerInfoId());
baseMapper.insert(safetyHatData);
if (dev.getType() == 1) {
//超过围栏报警只要在一个围栏内就不报警
List<SafetyHatFence> fenceList = safetyHatFenceMapper.selectList(new LambdaQueryWrapper<SafetyHatFence>()
.eq(SafetyHatFence::getProjectSn, dev.getProjectSn()));
if (CollUtil.isNotEmpty(fenceList)) {
// List<SafetyHatFence> fenceList = safetyHatFenceMapper.selectList(new LambdaQueryWrapper<SafetyHatFence>()
// .eq(SafetyHatFence::getProjectSn, dev.getFenceId()));
SafetyHatFence fence = safetyHatFenceMapper.selectById(dev.getFenceId());
if (fence != null) {
boolean isInFence = false;
boolean inFence = false;
for (SafetyHatFence fence : fenceList) {
// for (SafetyHatFence fence : fenceList) {
//判断是否在围栏范围内
if (Objects.equals(fence.getRangeType(), 1)) {
isInFence = RegionUtil.isInCircle(safetyHatData.getLongitude(), safetyHatData.getLatitude(), fence.getLongitude(), fence.getLatitude(), fence.getAreaRadius());
@ -150,7 +152,7 @@ public class SafetyHatDataServiceImpl extends ServiceImpl<SafetyHatDataMapper, S
if (isInFence) {
inFence = true;
}
}
// }
if (!inFence) {
SafetyHatAlarm alarm = new SafetyHatAlarm();
alarm.setDevSn(dev.getDevSn());
@ -163,6 +165,7 @@ public class SafetyHatDataServiceImpl extends ServiceImpl<SafetyHatDataMapper, S
}
}
}
}
@Override
public void edit(SafetyHatData safetyHatData) {

View File

@ -138,7 +138,7 @@ public class SafetyHatDevServiceImpl extends ServiceImpl<SafetyHatDevMapper, Saf
@Override
@Transactional(rollbackFor = Exception.class, noRollbackFor = OpenPromptException.class)
public void importExcelTemplate(MultipartFile excelFile, String projectSn) throws Exception {
public void importExcelTemplate(MultipartFile excelFile, String projectSn, Integer type) throws Exception {
List<SafetyHatFence> safetyHatFenceList = safetyHatFenceMapper.selectList(Wrappers.<SafetyHatFence>lambdaQuery()
.eq(SafetyHatFence::getProjectSn, projectSn));
if (StrUtil.isBlank(projectSn)) {
@ -184,6 +184,7 @@ public class SafetyHatDevServiceImpl extends ServiceImpl<SafetyHatDevMapper, Saf
dev.setDevSn(devSn);
dev.setProjectSn(projectSn);
dev.setFenceId(String.valueOf(fenceId));
dev.setType(type);
baseMapper.insert(dev);
}
});

View File

@ -156,6 +156,7 @@ public class SafetyHatTask {
data.setUploadTime(new Date(time * 1000L));
data.setProjectSn(dev.getProjectSn());
data.setIsPlatformData(1);
data.setType(dev.getType());
safetyHatDataService.add(data);
}
} else {