This commit is contained in:
1378012178@qq.com 2025-06-27 15:23:32 +08:00
commit 8494d2451a
22 changed files with 478 additions and 194 deletions

View File

@ -120,6 +120,17 @@ public class CameraInfoController extends JeecgController<CameraInfo, ICameraInf
return Result.OK("重启成功!");
}
/**
* 同步此项目下的IPC设备
*
* @param cameraInfo
* @return
*/
@GetMapping(value = "/syncProjectIpcDevice")
public Result<String> syncProjectIpcDevice(CameraInfo cameraInfo) {
return service.syncProjectIpcDevice(cameraInfo);
}
/**
* 获取IPC设备能力集
*
@ -507,4 +518,15 @@ public class CameraInfoController extends JeecgController<CameraInfo, ICameraInf
return Result.OK(pageList);
}
/**
* 高速球机移动方向控制
*
* @param cameraInfo
* @return
*/
@GetMapping(value = "/motionCtrl")
public Result motionCtrl(CameraInfo cameraInfo) throws Exception{
return service.motionCtrl(cameraInfo);
}
}

View File

@ -127,8 +127,8 @@ public class CameraInfo implements Serializable {
@ApiModelProperty(value = "协议类型")
private String protocol;
/**置顶的时间*/
@Excel(name = "用户设置置顶的时间毫秒级时间戳", width = 15)
@ApiModelProperty(value = "用户设置置顶的时间毫秒级时间戳")
@Excel(name = "用户设置置顶的时间,毫秒级时间戳", width = 15)
@ApiModelProperty(value = "用户设置置顶的时间,毫秒级时间戳")
@TableField(exist = false)
private String topTime;
/**护理单元*/
@ -139,7 +139,7 @@ public class CameraInfo implements Serializable {
@ApiModelProperty(value = "护理单元")
@TableField(exist = false)
private String nuName;
@ApiModelProperty(value = "码流类型 0 代表主码流1 代码子码流")
@ApiModelProperty(value = "码流类型 0 代表主码流,1 代码子码流")
@TableField(exist = false)
private int streamType;
@ -214,16 +214,16 @@ public class CameraInfo implements Serializable {
@ApiModelProperty(value = "存储设备名称")
@TableField(exist = false)
private String storageDevName;
@ApiModelProperty(value = "双摄IPC通道ID,双摄IPC的全景摄像头其值为0.双摄IPC的特写摄像头其值为1")
@ApiModelProperty(value = "双摄IPC通道ID,双摄IPC的全景摄像头,其值为0.双摄IPC的特写摄像头,其值为1")
@TableField(exist = false)
private String channelId;
@ApiModelProperty(value = "当录像存在存储池中, 录像所属的nvs的ID")
@TableField(exist = false)
private String nvsIdInPoolList;
@ApiModelProperty(value = "录像开始时间. GMT时间即1970.1.1零时至今的秒数")
@ApiModelProperty(value = "录像开始时间. GMT时间,即1970.1.1零时至今的秒数")
@TableField(exist = false)
private String startTime;
@ApiModelProperty(value = "录像结束时间. GMT时间即1970.1.1零时至今的秒数")
@ApiModelProperty(value = "录像结束时间. GMT时间,即1970.1.1零时至今的秒数")
@TableField(exist = false)
private String endTime;
@ApiModelProperty(value = "录像开始时间,YYYY-MM-DD HH:MI:SS")
@ -238,7 +238,7 @@ public class CameraInfo implements Serializable {
@ApiModelProperty(value = "回放录像类型。1: 定时录像; 2: 移动侦测等")
@TableField(exist = false)
private String videoType;
@ApiModelProperty(value = "录像片段大小单位字节")
@ApiModelProperty(value = "录像片段大小,单位字节")
@TableField(exist = false)
private String size;
@ApiModelProperty(value = "错误码")
@ -247,7 +247,7 @@ public class CameraInfo implements Serializable {
@ApiModelProperty(value = "错误描述")
@TableField(exist = false)
private String errorMsg;
@ApiModelProperty(value = "录像存储设备类型 -1未找到0:ipc1:nvr2nvs3server4vcs5storagePool")
@ApiModelProperty(value = "录像存储设备类型 -1:未找到,0:ipc,1:nvr,2:nvs:3:server,4:vcs,5:storagePool")
@TableField(exist = false)
private String storageType;
@ApiModelProperty(value = "预览/回放url")
@ -292,6 +292,15 @@ public class CameraInfo implements Serializable {
@ApiModelProperty(value = "IDS")
@TableField(exist = false)
private String ids;
@ApiModelProperty(value = "移动方向;枚举:[0:左上,1:上,2:右上,3:左,4:持续水平转动,5:右,6:左下,7:下,8:右下,9:缩小画面,10:放大画面,11:聚焦近处,12:聚焦远处]")
@TableField(exist = false)
private String direction;
@ApiModelProperty(value = "开始或停止移动;枚举:[0:停止,1:开始]")
@TableField(exist = false)
private String startOrNot;
@ApiModelProperty(value = "球机移动速度")
@TableField(exist = false)
private String speed;
@TableField(exist = false)
private String orgCode;
}

View File

@ -27,6 +27,7 @@ public interface ICameraInfoService extends IService<CameraInfo> {
void rebootDevice(CameraInfo cameraInfo);
void sync(String jsonResponse);
void syncCapability(String deviceIndex,String jsonResponse);
Result<String> syncProjectIpcDevice(CameraInfo cameraInfo);
Result<JSONObject> getIpcCapability(CameraInfo cameraInfo);
Result<JSONObject> getImageCommon(Map<String,Object> map);
Result setImageCommon(Map<String,Object> map);
@ -60,6 +61,6 @@ public interface ICameraInfoService extends IService<CameraInfo> {
Result uploadToServer(CameraInfo cameraInfo);
Result<String> stopUploadToServer(CameraInfo cameraInfo);
Result getUploadToServerProcess(CameraInfo cameraInfo);
Result motionCtrl(CameraInfo cameraInfo);
IPage<NuBaseInfo> getNuBaseList(String dataSourceCode,Page<NuBaseInfo> page, NuBaseInfo nuBaseInfo);
}

View File

@ -225,6 +225,111 @@ public class CameraInfoServiceImpl extends ServiceImpl<CameraInfoMapper, CameraI
}
}
/**
* 同步此项目下的IPC设备
*
* @param cameraInfo
* @return
*/
@Override
public Result<String> syncProjectIpcDevice(CameraInfo cameraInfo){
StringBuffer sb = new StringBuffer();
sb.append("{");
sb.append("\"start\"").append(":0").append(",");
sb.append("\"limit\"").append(":1000").append(",");
sb.append("\"filterAnd\"").append(":").append("{");
sb.append("\"deviceTypeList\"").append(":[").append("\"SURVEILLANCECAMERA\"").append("],");
sb.append("\"projectId\"").append(":").append("\"").append(cameraInfo.getProjectId()).append("\"");
sb.append("},");
sb.append("\"sort\"").append(":").append("[{");
sb.append("\"key\"").append(":").append("\"deviceIndex\"").append(",");
sb.append("\"value\"").append(":").append("\"asc\"");
sb.append("}]");
sb.append("}");
String jsonResponse = tumsApi.getDeviceList(sb.toString());
JSONObject jsonObject = new JSONObject(jsonResponse);
String errorCode = jsonObject.getStr("error_code");
if(errorCode.equals("0")){
syncProjectIpc(jsonResponse);
return Result.OK("同步设备成功!");
}else{
ErrorCode errVo = errorCodeService.getByCode(errorCode);
String errMsg = errVo.getErrorMsg();
log.info("getImageCommon:{}",errMsg);
return Result.error(errMsg);
}
}
/**
* 同步IPC设备信息入库
* @param jsonResponse
* @return
*/
private void syncProjectIpc(String jsonResponse){
JSONObject jsonObject = new JSONObject(jsonResponse);
if(jsonObject.getInt("error_code").equals(0)){
JSONObject result = (JSONObject)jsonObject.get("result");
if(result.getInt("total")>0){
JSONArray list = result.getJSONArray("list");
for(int i=0;i<list.size();i++){
ObjectMapper mapper = new ObjectMapper();
String jsonString = list.get(i).toString();
try {
CameraInfo cameraInfo = mapper.readValue(jsonString, CameraInfo.class);
CameraInfo entity = baseMapper.getByDeviceId(cameraInfo);
if(entity==null){
//新增
baseMapper.insert(cameraInfo);
}else{
//修改
cameraInfo.setId(entity.getId());
baseMapper.updateById(cameraInfo);
}
//同步能力集
syncIpcCapability(cameraInfo);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
}
/**
* 同步IPC设备能力集入库
* @param cameraInfo
* @return
*/
private void syncIpcCapability(CameraInfo cameraInfo){
String deviceIndex = cameraInfo.getDeviceIndex();
StringBuffer paramsSb = new StringBuffer();
paramsSb.append("{");
paramsSb.append("\"devId\"").append(":").append("\"").append(deviceIndex).append("\"");
paramsSb.append("}");
String ipcCapabilityRes = tumsApi.getIpcCapability(paramsSb.toString());
JSONObject jsonObject = new JSONObject(ipcCapabilityRes);
if(jsonObject.getInt("error_code").equals(0)){
JSONObject result = (JSONObject)jsonObject.get("result");
String capabilityStr = result.getStr("capability");
ObjectMapper mapper = new ObjectMapper();
try {
CameraInfo capability = mapper.readValue(capabilityStr, CameraInfo.class);
capability.setDeviceIndex(deviceIndex);
CameraInfo entity = baseMapper.getCapabilityByDeviceId(capability);
if(entity==null){
//新增
baseMapper.insertCapability(capability);
}else{
//修改
capability.setId(entity.getId());
baseMapper.updateCapabilityById(capability);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
/**
* 接口调用-获取摄像头能力集
* @param cameraInfo
@ -1815,8 +1920,11 @@ public class CameraInfoServiceImpl extends ServiceImpl<CameraInfoMapper, CameraI
JSONArray videoTypeArr = videoJson.getJSONArray("videoType");
JSONArray size = videoJson.getJSONArray("size");
String errCode = videoJson.getStr("errorCode");
ErrorCode errVo = errorCodeService.getByCode(errCode);
String errMsg = errVo.getErrorMsg();
String errMsg = "";
if(!errCode.equals("0")){
ErrorCode errVo = errorCodeService.getByCode(errCode);
errMsg = errVo.getErrorMsg();
}
for(int i=0;i<total;i++){
String videoTypeStr = videoTypeArr.get(i).toString();
CameraInfo entity = new CameraInfo();
@ -2371,4 +2479,42 @@ public class CameraInfoServiceImpl extends ServiceImpl<CameraInfoMapper, CameraI
public IPage<NuBaseInfo> getNuBaseList(String dataSourceCode,Page<NuBaseInfo> page, NuBaseInfo nuBaseInfo) {
return baseMapper.getNuBaseList(page,nuBaseInfo);
}
/**
* 高速球机移动方向控制
* @param cameraInfo
* @return
*/
@Override
public Result motionCtrl(CameraInfo cameraInfo){
StringBuffer sb = new StringBuffer();
sb.append("{");
sb.append("\"id\"").append(":").append("\"").append(cameraInfo.getDeviceIndex()).append("\",");
sb.append("\"direction\"").append(":").append(cameraInfo.getDirection()).append(",");
sb.append("\"startOrNot\"").append(":").append(cameraInfo.getStartOrNot()).append(",");
sb.append("\"speed\"").append(":").append("\"").append(cameraInfo.getSpeed()).append("\"");
sb.append("}");
String res = tumsApi.motionCtrl(sb.toString());
JSONObject jsonObject = new JSONObject(res);
int errorCode = jsonObject.getInt("error_code");
if(errorCode == 0){
// StringBuffer sb2 = new StringBuffer();
// sb2.append("{");
// sb2.append("\"id\"").append(":").append("\"").append(cameraInfo.getDeviceIndex()).append("\",");
// sb2.append("\"direction\"").append(":").append(cameraInfo.getDirection()).append(",");
// sb2.append("\"startOrNot\"").append(":").append(0).append(",");
// sb2.append("\"speed\"").append(":").append("\"").append(cameraInfo.getSpeed()).append("\"");
// sb2.append("}");
// String res2 = tumsApi.motionCtrl(sb2.toString());
return Result.OK();
}else{
String errMsg = jsonObject.getStr("msg");
if(errMsg == null || errMsg.equals("")) {
ErrorCode errVo = errorCodeService.getByCode(String.valueOf(errorCode));
errMsg = errVo.getErrorMsg();
}
log.info("motionCtrl:{}-{}",errorCode,errMsg);
return Result.error(errMsg);
}
}
}

View File

@ -60,8 +60,9 @@ public enum ApiEnum {
IPC_GET_BATCH_PROGRESS("/tums/record/v1/getBatchProgress","获取批量操作录像计划进度"),
IPC_GET_STORAGE_DEVICE("/tums/record/v1/getStorageDevice","获取存储设备列表"),
IPC_GET_ALL_RECORD_PLANS("/tums/record/v1/getAllRecordPlans","获取所有录像计划列表"),
/** =================>暂时无用 **/
IPC_MOTION_CTRL("/tums/ptz/v1/motionCtrl","高速球机移动方向控制"),
/** =================>暂时无用 **/
IPC_GET_ALL_PRESETS("/tums/ptz/v1/getAllPresets","获取高速球机的所有预置点"),
IPC_OPERATE_PRESET("/tums/ptz/v1/operatePreset","操作高速球机的预置点"),
IPC_GET_ALL_TOURS("/tums/ptz/v1/getAllTours","获取高速球机的所有巡航列表"),

View File

@ -277,9 +277,11 @@ public class TumsApi {
* @return
*/
public String getDeviceList(String jsonRequest){
this.createTumsClient();
log.info("getDeviceList:request:{}",jsonRequest);
this.createTumsClient();
String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.GET_DEVICE_LIST.getValue());
// log.info("getDeviceList:{}",jsonResponse);
log.info("getDeviceList:response:{}",jsonResponse);
return jsonResponse;
}
@ -326,8 +328,9 @@ public class TumsApi {
*/
public String getIpcCapability(String jsonRequest){
this.createTumsClient();
log.info("getIpcCapability:request:{}",jsonRequest);
String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.IPC_GET_IPC_CAPABILITY.getValue());
// log.info("getIpcCapability:{}",jsonResponse);
log.info("getIpcCapability:response:{}",jsonResponse);
return jsonResponse;
}
@ -580,9 +583,24 @@ public class TumsApi {
*/
public String getUploadToServerProcess(String jsonRequest){
this.createTumsClient();
log.info("getUploadToServerProcess:request:{}",jsonRequest);
String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.IPC_GET_UPLOAD_TO_SERVER_PROCESS.getValue());
log.info("getUploadToServerProcess:{}",jsonResponse);
log.info("getUploadToServerProcess:response:{}",jsonResponse);
return jsonResponse;
}
/**
* 高速球机移动方向控制
* @param jsonRequest
* @return
*/
public String motionCtrl(String jsonRequest){
this.createTumsClient();
log.info("motionCtrl:request:{}",jsonRequest);
String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.IPC_MOTION_CTRL.getValue());
log.info("motionCtrl:response:{}",jsonResponse);
return jsonResponse;
}
}

View File

@ -1,39 +1,27 @@
package com.nu.modules.nuIotTqApiRequestLog.controller;
package com.nu.modules.tq.apiRequestLog.controller;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang.StringUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.query.QueryRuleEnum;
import org.jeecg.common.util.oConvertUtils;
import com.nu.modules.nuIotTqApiRequestLog.entity.NuIotTqApiRequestLog;
import com.nu.modules.nuIotTqApiRequestLog.service.INuIotTqApiRequestLogService;
import com.nu.modules.tq.apiRequestLog.entity.NuIotTqApiRequestLog;
import com.nu.modules.tq.apiRequestLog.service.INuIotTqApiRequestLogService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
@ -78,6 +66,49 @@ public class NuIotTqApiRequestLogController extends JeecgController<NuIotTqApiRe
QueryWrapper<NuIotTqApiRequestLog> queryWrapper = QueryGenerator.initQueryWrapper(nuIotTqApiRequestLog, req.getParameterMap(),customeRuleMap);
Page<NuIotTqApiRequestLog> page = new Page<NuIotTqApiRequestLog>(pageNo, pageSize);
IPage<NuIotTqApiRequestLog> pageList = nuIotTqApiRequestLogService.page(page, queryWrapper);
// 获取当前时间
Calendar calendar = Calendar.getInstance();
// 减去5分钟
calendar.add(Calendar.MINUTE, -5);
// 转换为Date对象
Date fiveMinutesAgo = calendar.getTime();
for(NuIotTqApiRequestLog par:pageList.getRecords()){
String dateStr = par.getRequestTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = null;
try {
date = sdf.parse(dateStr);
System.out.println("Date: " + date); // 输出Date: Tue Aug 15 14:30:00 CST 2023
} catch (ParseException e) {
e.printStackTrace();
}
//如果返回状态为空并且超过了5分钟则返回抄表失败
if(StringUtils.isBlank(par.getResolveStatus()) && fiveMinutesAgo.getTime() > date.getTime()){
//9清零 3抄表 10电表拉闸 11电表合闸 49水表清零 42水表抄表 43水表开闸 53水表关闸
if(StringUtils.equals("9",par.getType())){
par.setResolveStatus("清零失败");
}else if (StringUtils.equals("3",par.getType())){
par.setResolveStatus("抄表失败");
}else if(StringUtils.equals("10",par.getType())){
par.setResolveStatus("拉闸失败");
}else if (StringUtils.equals("11",par.getType())){
par.setResolveStatus("合闸失败");
}else if(StringUtils.equals("49",par.getType())){
par.setResolveStatus("清零失败");
}else if (StringUtils.equals("42",par.getType())){
par.setResolveStatus("抄表失败");
}else if (StringUtils.equals("43",par.getType())){
par.setResolveStatus("开阀失败");
}else if (StringUtils.equals("53",par.getType())){
par.setResolveStatus("关阀失败");
}
//判断返回状态为空并且没有超过了5分钟则返回抄表中
}else if(StringUtils.isBlank(par.getResolveStatus())){
par.setResolveStatus(par.getRequestStatus());
}
//返回状态有值则保持原样输出返回状态值
}
return Result.OK(pageList);
}

View File

@ -1,15 +1,11 @@
package com.nu.modules.nuIotTqApiRequestLog.entity;
package com.nu.modules.tq.apiRequestLog.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import org.jeecg.common.constant.ProvinceCityArea;
import org.jeecg.common.util.SpringContextUtils;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

View File

@ -1,9 +1,6 @@
package com.nu.modules.nuIotTqApiRequestLog.mapper;
package com.nu.modules.tq.apiRequestLog.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.nu.modules.nuIotTqApiRequestLog.entity.NuIotTqApiRequestLog;
import com.nu.modules.tq.apiRequestLog.entity.NuIotTqApiRequestLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**

View File

@ -1,5 +1,5 @@
<?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="com.nu.modules.nuIotTqApiRequestLog.mapper.NuIotTqApiRequestLogMapper">
<mapper namespace="com.nu.modules.tq.apiRequestLog.mapper.NuIotTqApiRequestLogMapper">
</mapper>

View File

@ -1,6 +1,6 @@
package com.nu.modules.nuIotTqApiRequestLog.service;
package com.nu.modules.tq.apiRequestLog.service;
import com.nu.modules.nuIotTqApiRequestLog.entity.NuIotTqApiRequestLog;
import com.nu.modules.tq.apiRequestLog.entity.NuIotTqApiRequestLog;
import com.baomidou.mybatisplus.extension.service.IService;
/**

View File

@ -1,8 +1,8 @@
package com.nu.modules.nuIotTqApiRequestLog.service.impl;
package com.nu.modules.tq.apiRequestLog.service.impl;
import com.nu.modules.nuIotTqApiRequestLog.entity.NuIotTqApiRequestLog;
import com.nu.modules.nuIotTqApiRequestLog.mapper.NuIotTqApiRequestLogMapper;
import com.nu.modules.nuIotTqApiRequestLog.service.INuIotTqApiRequestLogService;
import com.nu.modules.tq.apiRequestLog.entity.NuIotTqApiRequestLog;
import com.nu.modules.tq.apiRequestLog.mapper.NuIotTqApiRequestLogMapper;
import com.nu.modules.tq.apiRequestLog.service.INuIotTqApiRequestLogService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;

View File

@ -8,14 +8,13 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nu.modules.nuIotTqElectricitySyncLog.entity.NuIotTqElectricitySyncLog;
import com.nu.modules.nuIotTqElectricitySyncLog.service.INuIotTqElectricitySyncLogService;
import com.nu.modules.tq.syncLog.entity.NuIotTqElectricitySyncLog;
import com.nu.modules.tq.syncLog.service.INuIotTqElectricitySyncLogService;
import com.nu.modules.tq.common.entity.TqApiLog;
import com.nu.modules.tq.common.service.ITqApiLogService;
import com.nu.modules.tq.utils.HttpTool;
import com.nu.modules.tq.utils.SignTool;
import com.nu.modules.tq.utils.TqApi;
import com.nu.modules.tq.water.entity.WaterMeter;
import lombok.extern.slf4j.Slf4j;
import com.nu.modules.tq.electricity.entity.ElectricityMeter;
import com.nu.modules.tq.electricity.mapper.ElectricityMeterMapper;
@ -105,7 +104,7 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
tqApiLog.setType(9);
tqApiLog.setRequestValue(entity.getEleValue());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(status);
tqApiLog.setRequestStatus("清零中");
logService.insert(tqApiLog);
}else{
String errorMsg = json.getStr("error_msg");
@ -116,7 +115,7 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
tqApiLog.setType(9);
tqApiLog.setRequestValue(entity.getEleValue());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(status);
tqApiLog.setRequestStatus("清零失败");
tqApiLog.setRequestRemark(errorMsg);
logService.insert(tqApiLog);
return Result.error(errorMsg);
@ -130,7 +129,7 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
tqApiLog.setType(9);
tqApiLog.setRequestValue(entity.getEleValue());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(httpStatus);
tqApiLog.setRequestStatus("清零失败");
tqApiLog.setRequestRemark(errorMsg);
logService.insert(tqApiLog);
return Result.error(errorMsg);
@ -179,7 +178,11 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
tqApiLog.setAddress(electricityMeter.getAddress());
tqApiLog.setType(electricityMeter.getType());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(status);
if(type.equals(10)){
tqApiLog.setRequestStatus("拉闸中");
}else{
tqApiLog.setRequestStatus("合闸中");
}
logService.insert(tqApiLog);
}else{
String errorMsg = json.getStr("error_msg");
@ -189,7 +192,11 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
tqApiLog.setAddress(electricityMeter.getAddress());
tqApiLog.setType(electricityMeter.getType());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(status);
if(type.equals(10)){
tqApiLog.setRequestStatus("拉闸失败");
}else{
tqApiLog.setRequestStatus("合闸失败");
}
tqApiLog.setRequestRemark(errorMsg);
logService.insert(tqApiLog);
return Result.error(errorMsg);
@ -202,7 +209,11 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
tqApiLog.setAddress(electricityMeter.getAddress());
tqApiLog.setType(electricityMeter.getType());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(httpStatus);
if(type.equals(10)){
tqApiLog.setRequestStatus("拉闸失败");
}else{
tqApiLog.setRequestStatus("合闸失败");
}
tqApiLog.setRequestRemark(errorMsg);
logService.insert(tqApiLog);
return Result.error(errorMsg);
@ -251,7 +262,7 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
tqApiLog.setType(3);
tqApiLog.setRequestValue(entity.getEleValue());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(status);
tqApiLog.setRequestStatus("抄表中");
logService.insert(tqApiLog);
}else{
String errorMsg = json.getStr("error_msg");
@ -262,7 +273,7 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
tqApiLog.setType(3);
tqApiLog.setRequestValue(entity.getEleValue());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(status);
tqApiLog.setRequestStatus("抄表失败");
tqApiLog.setRequestRemark(errorMsg);
logService.insert(tqApiLog);
return Result.error(errorMsg);
@ -276,7 +287,7 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
tqApiLog.setType(3);
tqApiLog.setRequestValue(entity.getEleValue());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(httpStatus);
tqApiLog.setRequestStatus("抄表失败");
tqApiLog.setRequestRemark(errorMsg);
logService.insert(tqApiLog);
return Result.error(errorMsg);
@ -306,7 +317,11 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
tqApiLog.setOprId(oprId);
tqApiLog.setResolveValue("0");
tqApiLog.setResolveTime(resolveTime);
tqApiLog.setResolveStatus(status);
if(status.equals("SUCCESS")){
tqApiLog.setResolveStatus("清零成功");
}else{
tqApiLog.setResolveStatus("清零失败");
}
tqApiLog.setResolveRemark(data);
TqApiLog logEntity = logService.getApiLog(tqApiLog);
if(logEntity!=null) {
@ -351,9 +366,20 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
TqApiLog tqApiLog = new TqApiLog();
tqApiLog.setOprId(oprId);
tqApiLog.setResolveTime(resolveTime);
tqApiLog.setResolveStatus(status);
TqApiLog logEntity = logService.getApiLog(tqApiLog);
if(logEntity!=null) {
Integer type = logEntity.getType();
String typeStr = "";
if(type.equals(10)){
typeStr = "拉闸";
}else{
typeStr = "合闸";
}
if(status.equals("SUCCESS")){
tqApiLog.setResolveStatus(typeStr+"成功");
}else{
tqApiLog.setResolveStatus(typeStr+"失败");
}
tqApiLog.setId(logEntity.getId());
logService.update(tqApiLog);
}
@ -409,7 +435,11 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
tqApiLog.setType(type);
tqApiLog.setResolveValue(resolveValue);
tqApiLog.setResolveTime(resolveTime);
tqApiLog.setResolveStatus(status);
if(status.equals("SUCCESS")){
tqApiLog.setResolveStatus("抄表成功");
}else{
tqApiLog.setResolveStatus("抄表失败");
}
tqApiLog.setResolveRemark(dsp);
TqApiLog logEntity = logService.getApiLog(tqApiLog);
if(logEntity!=null){
@ -429,7 +459,7 @@ public class ElectricityMeterServiceImpl extends ServiceImpl<ElectricityMeterMap
TqApiLog tqApiLog = new TqApiLog();
tqApiLog.setOprId(oprId);
tqApiLog.setResolveTime(resolveTime);
tqApiLog.setResolveStatus(status);
tqApiLog.setResolveStatus("抄表失败");
TqApiLog logEntity = logService.getApiLog(tqApiLog);
if(logEntity!=null){
tqApiLog.setId(logEntity.getId());

View File

@ -1,39 +1,22 @@
package com.nu.modules.nuIotTqElectricitySyncLog.controller;
package com.nu.modules.tq.syncLog.controller;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.query.QueryRuleEnum;
import org.jeecg.common.util.oConvertUtils;
import com.nu.modules.nuIotTqElectricitySyncLog.entity.NuIotTqElectricitySyncLog;
import com.nu.modules.nuIotTqElectricitySyncLog.service.INuIotTqElectricitySyncLogService;
import com.nu.modules.tq.syncLog.entity.NuIotTqElectricitySyncLog;
import com.nu.modules.tq.syncLog.service.INuIotTqElectricitySyncLogService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;

View File

@ -1,20 +1,15 @@
package com.nu.modules.nuIotTqElectricitySyncLog.entity;
package com.nu.modules.tq.syncLog.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import org.jeecg.common.constant.ProvinceCityArea;
import org.jeecg.common.util.SpringContextUtils;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;

View File

@ -1,9 +1,6 @@
package com.nu.modules.nuIotTqElectricitySyncLog.mapper;
package com.nu.modules.tq.syncLog.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.nu.modules.nuIotTqElectricitySyncLog.entity.NuIotTqElectricitySyncLog;
import com.nu.modules.tq.syncLog.entity.NuIotTqElectricitySyncLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**

View File

@ -1,5 +1,5 @@
<?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="com.nu.modules.nuIotTqElectricitySyncLog.mapper.NuIotTqElectricitySyncLogMapper">
<mapper namespace="com.nu.modules.tq.syncLog.mapper.NuIotTqElectricitySyncLogMapper">
</mapper>

View File

@ -1,6 +1,6 @@
package com.nu.modules.nuIotTqElectricitySyncLog.service;
package com.nu.modules.tq.syncLog.service;
import com.nu.modules.nuIotTqElectricitySyncLog.entity.NuIotTqElectricitySyncLog;
import com.nu.modules.tq.syncLog.entity.NuIotTqElectricitySyncLog;
import com.baomidou.mybatisplus.extension.service.IService;
/**

View File

@ -1,8 +1,8 @@
package com.nu.modules.nuIotTqElectricitySyncLog.service.impl;
package com.nu.modules.tq.syncLog.service.impl;
import com.nu.modules.nuIotTqElectricitySyncLog.entity.NuIotTqElectricitySyncLog;
import com.nu.modules.nuIotTqElectricitySyncLog.mapper.NuIotTqElectricitySyncLogMapper;
import com.nu.modules.nuIotTqElectricitySyncLog.service.INuIotTqElectricitySyncLogService;
import com.nu.modules.tq.syncLog.entity.NuIotTqElectricitySyncLog;
import com.nu.modules.tq.syncLog.mapper.NuIotTqElectricitySyncLogMapper;
import com.nu.modules.tq.syncLog.service.INuIotTqElectricitySyncLogService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;

View File

@ -8,12 +8,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nu.modules.nuIotTqElectricitySyncLog.entity.NuIotTqElectricitySyncLog;
import com.nu.modules.nuIotTqElectricitySyncLog.service.INuIotTqElectricitySyncLogService;
import com.nu.modules.tq.syncLog.entity.NuIotTqElectricitySyncLog;
import com.nu.modules.tq.syncLog.service.INuIotTqElectricitySyncLogService;
import com.nu.modules.tq.common.entity.TqApiLog;
import com.nu.modules.tq.common.service.ITqApiLogService;
import com.nu.modules.tq.electricity.entity.ElectricityMeter;
import com.nu.modules.tq.electricity.service.impl.ElectricityMeterServiceImpl;
import com.nu.modules.tq.utils.HttpTool;
import com.nu.modules.tq.utils.SignTool;
import com.nu.modules.tq.utils.TqApi;
@ -107,7 +105,7 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
tqApiLog.setType(49);
tqApiLog.setRequestValue(entity.getWaterValue());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(status);
tqApiLog.setRequestStatus("清零中");
logService.insert(tqApiLog);
}else{
String errorMsg = json.getStr("error_msg");
@ -118,7 +116,7 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
tqApiLog.setType(49);
tqApiLog.setRequestValue(entity.getWaterValue());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(status);
tqApiLog.setRequestStatus("清零失败");
tqApiLog.setRequestRemark(errorMsg);
logService.insert(tqApiLog);
return Result.error(errorMsg);
@ -132,7 +130,7 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
tqApiLog.setType(49);
tqApiLog.setRequestValue(entity.getWaterValue());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(httpStatus);
tqApiLog.setRequestStatus("清零失败");
tqApiLog.setRequestRemark(errorMsg);
logService.insert(tqApiLog);
return Result.error(errorMsg);
@ -141,7 +139,7 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
}
/**
* 开关
* 开关
*/
@Override
public Result<String> waterControl(WaterMeter waterMeter){
@ -149,9 +147,9 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
WaterMeter entity = baseMapper.getWaterMeter(waterMeter);
if(entity == null){
if(type.equals(43)){
return Result.error("请先同步水表设备信息后再进行开");
return Result.error("请先同步水表设备信息后再进行开");
}else{
return Result.error("请先同步水表设备信息后再进行关");
return Result.error("请先同步水表设备信息后再进行关");
}
}
List<Map<String, Object>> req = new ArrayList<>();
@ -182,6 +180,11 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
tqApiLog.setType(waterMeter.getType());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(status);
if(type.equals(43)){
tqApiLog.setRequestStatus("开阀中");
}else{
tqApiLog.setRequestStatus("关阀中");
}
logService.insert(tqApiLog);
}else{
String errorMsg = json.getStr("error_msg");
@ -191,7 +194,11 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
tqApiLog.setAddress(waterMeter.getAddress());
tqApiLog.setType(waterMeter.getType());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(status);
if(type.equals(43)){
tqApiLog.setRequestStatus("开阀失败");
}else{
tqApiLog.setRequestStatus("关阀失败");
}
tqApiLog.setRequestRemark(errorMsg);
logService.insert(tqApiLog);
return Result.error(errorMsg);
@ -204,15 +211,19 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
tqApiLog.setAddress(waterMeter.getAddress());
tqApiLog.setType(waterMeter.getType());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(httpStatus);
if(type.equals(43)){
tqApiLog.setRequestStatus("开阀失败");
}else{
tqApiLog.setRequestStatus("关阀失败");
}
tqApiLog.setRequestRemark(errorMsg);
logService.insert(tqApiLog);
return Result.error(errorMsg);
}
if(type.equals(43)){
return Result.OK("成功");
return Result.OK("成功");
}else{
return Result.OK("成功");
return Result.OK("成功");
}
}
@ -253,7 +264,7 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
tqApiLog.setType(42);
tqApiLog.setRequestValue(entity.getWaterValue());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(status);
tqApiLog.setRequestStatus("抄表中");
logService.insert(tqApiLog);
}else{
String errorMsg = json.getStr("error_msg");
@ -264,7 +275,7 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
tqApiLog.setType(42);
tqApiLog.setRequestValue(entity.getWaterValue());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(status);
tqApiLog.setRequestStatus("抄表失败");
tqApiLog.setRequestRemark(errorMsg);
logService.insert(tqApiLog);
return Result.error(errorMsg);
@ -278,7 +289,7 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
tqApiLog.setType(42);
tqApiLog.setRequestValue(entity.getWaterValue());
tqApiLog.setRequestTime(DateUtil.now());
tqApiLog.setRequestStatus(httpStatus);
tqApiLog.setRequestStatus("抄表失败");
tqApiLog.setRequestRemark(errorMsg);
logService.insert(tqApiLog);
return Result.error(errorMsg);
@ -308,7 +319,11 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
tqApiLog.setOprId(oprId);
tqApiLog.setResolveValue("0");
tqApiLog.setResolveTime(resolveTime);
tqApiLog.setResolveStatus(status);
if(status.equals("SUCCESS")){
tqApiLog.setResolveStatus("清零成功");
}else{
tqApiLog.setResolveStatus("清零失败");
}
tqApiLog.setResolveRemark(data);
TqApiLog logEntity = logService.getApiLog(tqApiLog);
if(logEntity!=null) {
@ -334,7 +349,7 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
}
/**
* 开关回调通知
* 开关回调通知
*/
@Override
public String waterControlNotify(String response_content, String timestamp, String sign){
@ -353,9 +368,20 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
TqApiLog tqApiLog = new TqApiLog();
tqApiLog.setOprId(oprId);
tqApiLog.setResolveTime(resolveTime);
tqApiLog.setResolveStatus(status);
TqApiLog logEntity = logService.getApiLog(tqApiLog);
if(logEntity!=null) {
Integer type = logEntity.getType();
String typeStr = "";
if(type.equals(43)){
typeStr = "开阀";
}else {
typeStr = "关阀";
}
if(status.equals("SUCCESS")){
tqApiLog.setResolveStatus(typeStr+"成功");
}else{
tqApiLog.setResolveStatus(typeStr+"失败");
}
tqApiLog.setId(logEntity.getId());
logService.update(tqApiLog);
}
@ -416,7 +442,11 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
tqApiLog.setResolveValue(resolveValue);
}
tqApiLog.setResolveTime(resolveTime);
tqApiLog.setResolveStatus(status);
if(status.equals("SUCCESS")){
tqApiLog.setResolveStatus("抄表成功");
}else{
tqApiLog.setResolveStatus("抄表失败");
}
tqApiLog.setResolveRemark(dsp);
TqApiLog logEntity = logService.getApiLog(tqApiLog);
if(logEntity!=null){
@ -440,7 +470,7 @@ public class WaterMeterServiceImpl extends ServiceImpl<WaterMeterMapper, WaterMe
TqApiLog tqApiLog = new TqApiLog();
tqApiLog.setOprId(oprId);
tqApiLog.setResolveTime(resolveTime);
tqApiLog.setResolveStatus(status);
tqApiLog.setResolveStatus("抄表失败");
TqApiLog logEntity = logService.getApiLog(tqApiLog);
if(logEntity!=null){
tqApiLog.setId(logEntity.getId());

View File

@ -133,7 +133,7 @@ public class HumidDeviceController extends JeecgController<HumidDevice, IHumidDe
}
@AutoLog(value = "同步表到业务系统")
@AutoLog(value = "同步温湿度表到业务系统")
@RequestMapping(value = "/syncHumidDevice", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> syncHumidDevice(@RequestBody HumidDevice humidDevice) {
String dataSourceCode = humidDevice.getDepartServerUrl();

View File

@ -1,5 +1,6 @@
package com.nu.modules.yiweilian.humid.service.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
import com.baomidou.dynamic.datasource.annotation.DS;
@ -7,11 +8,8 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nu.modules.nuIotTqElectricitySyncLog.entity.NuIotTqElectricitySyncLog;
import com.nu.modules.nuIotTqElectricitySyncLog.service.INuIotTqElectricitySyncLogService;
import com.nu.modules.tq.utils.HttpTool;
import com.nu.modules.tq.water.entity.WaterMeter;
import com.nu.modules.tq.water.service.impl.WaterMeterServiceImpl;
import com.nu.modules.tq.syncLog.entity.NuIotTqElectricitySyncLog;
import com.nu.modules.tq.syncLog.service.INuIotTqElectricitySyncLogService;
import com.nu.modules.yiweilian.humid.entity.HumidDevice;
import com.nu.modules.yiweilian.humid.mapper.HumidDeviceMapper;
import com.nu.modules.yiweilian.humid.service.IHumidDeviceService;
@ -25,9 +23,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
@Slf4j
@Service
@ -231,29 +230,53 @@ public class HumidDeviceServiceImpl extends ServiceImpl<HumidDeviceMapper, Humid
Integer limit = dataObj.getInt("rows");
Integer page = dataObj.getInt("page");
JSONArray dataArr = dataObj.getJSONArray("dataList");
for(int i=0;i<dataArr.size();i++){
if(dataArr.size()>0){
for(int i=0;i<dataArr.size();i++){
HumidDevice dh = new HumidDevice();
JSONObject json = (JSONObject)dataArr.get(i);
String sn = json.getStr("sn");
String status = json.getStr("status");
String electricity = json.getStr("electricity");
String temperature = json.getStr("temperature");
String humidity = json.getStr("humidity");
String reportingTime = json.getStr("date");
dh.setStatus(status);
Date reportingDate = DateUtil.parse(reportingTime,"yyyy-MM-dd HH:mm:ss");
Calendar ca = Calendar.getInstance();
ca.add(Calendar.MINUTE,-5);
Date currentDate = ca.getTime();
if(reportingDate.getTime()<=currentDate.getTime()){
dh.setStatus("1");
}
dh.setSn(sn);
dh.setElectricity(electricity);
dh.setTemperature(temperature);
dh.setHumidity(humidity);
dh.setReportingTime(reportingTime);
baseMapper.updateValue(dh);
dh.setOptType("read");
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(sysUser!=null){
dh.setOptBy(sysUser.getUsername());
}
baseMapper.insertLog(dh);
}
}else{
errorMsg += humidDevice.getSn()+"温湿度设备丢失,请联系管理员";
HumidDevice dh = new HumidDevice();
JSONObject json = (JSONObject)dataArr.get(i);
String sn = json.getStr("sn");
String status = json.getStr("status");
String electricity = json.getStr("electricity");
String temperature = json.getStr("temperature");
String humidity = json.getStr("humidity");
String reportingTime = json.getStr("date");
dh.setSn(sn);
dh.setStatus(status);
dh.setElectricity(electricity);
dh.setTemperature(temperature);
dh.setHumidity(humidity);
dh.setReportingTime(reportingTime);
baseMapper.updateValue(dh);
humidDevice.setOptType("read");
dh.setSn(humidDevice.getSn());
dh.setStatus("1");
dh.setElectricity("0");
dh.setTemperature("0");
dh.setHumidity("0");
dh.setReportingTime(DateUtil.now());
dh.setOptType("read");
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(sysUser!=null){
humidDevice.setOptBy(sysUser.getUsername());
dh.setOptBy(sysUser.getUsername());
}
baseMapper.insertLog(humidDevice);
baseMapper.insertLog(dh);
baseMapper.updateValue(dh);
}
if((page+1)*limit<count){
Map<String, Object> params = getParmas(page+1,limit,humidDevice);
@ -344,7 +367,8 @@ public class HumidDeviceServiceImpl extends ServiceImpl<HumidDeviceMapper, Humid
if(deviceParameters!=null){
return Result.OK(deviceParameters);
}else{
return Result.error("获取设备配置参数错误");
return Result.error("温湿度设备丢失获取配置错误,请联系管理员");
// return Result.error("获取设备配置参数错误");
}
}
@ -361,44 +385,48 @@ public class HumidDeviceServiceImpl extends ServiceImpl<HumidDeviceMapper, Humid
if(responseCode.equals(0)){
JSONObject dataObj = jsonObject.getJSONObject("data");
JSONArray dataArr = dataObj.getJSONArray("dataList");
for(int i=0;i<dataArr.size();i++){
JSONObject json = (JSONObject)dataArr.get(i);
String sn = json.getStr("sn");
String deviceName = json.getStr("deviceName");
String deviceTypes = json.getStr("deviceTypes");
String reportingInterval = json.getStr("reportingInterval");
String recordInterval = json.getStr("recordInterval");
String historyReportTime = json.getStr("historyReportTime");
String historyInterval = json.getStr("historyInterval");
String temperatureHigh = json.getStr("temperatureHigh");
String temperatureLow = json.getStr("temperatureLow");
String temperatureBuffer = json.getStr("temperatureBuffer");
String humidityHigh = json.getStr("humidityHigh");
String humidityLow = json.getStr("humidityLow");
String humidityBuffer = json.getStr("humidityBuffer");
String timeCode = json.getStr("timeCode");
String isOutages = json.getStr("isOutages");
String isLowBattery = json.getStr("isLowBattery");
String isOnline = json.getStr("isOnline");
if(dataArr.size()>0){
for(int i=0;i<dataArr.size();i++){
JSONObject json = (JSONObject)dataArr.get(i);
String sn = json.getStr("sn");
String deviceName = json.getStr("deviceName");
String deviceTypes = json.getStr("deviceTypes");
String reportingInterval = json.getStr("reportingInterval");
String recordInterval = json.getStr("recordInterval");
String historyReportTime = json.getStr("historyReportTime");
String historyInterval = json.getStr("historyInterval");
String temperatureHigh = json.getStr("temperatureHigh");
String temperatureLow = json.getStr("temperatureLow");
String temperatureBuffer = json.getStr("temperatureBuffer");
String humidityHigh = json.getStr("humidityHigh");
String humidityLow = json.getStr("humidityLow");
String humidityBuffer = json.getStr("humidityBuffer");
String timeCode = json.getStr("timeCode");
String isOutages = json.getStr("isOutages");
String isLowBattery = json.getStr("isLowBattery");
String isOnline = json.getStr("isOnline");
dh.setSn(sn);
dh.setDeviceName(deviceName);
dh.setDeviceTypes(deviceTypes);
dh.setReportingInterval(reportingInterval);
dh.setRecordInterval(recordInterval);
dh.setHistoryReportTime(historyReportTime);
dh.setHistoryInterval(historyInterval);
dh.setTemperatureHigh(temperatureHigh);
dh.setTemperatureLow(temperatureLow);
dh.setTemperatureBuffer(temperatureBuffer);
dh.setHumidityHigh(humidityHigh);
dh.setHumidityLow(humidityLow);
dh.setHumidityBuffer(humidityBuffer);
dh.setTimeCode(timeCode);
dh.setIzOutages(isOutages);
dh.setIzLowBattery(isLowBattery);
dh.setIzOnline(isOnline);
break;
dh.setSn(sn);
dh.setDeviceName(deviceName);
dh.setDeviceTypes(deviceTypes);
dh.setReportingInterval(reportingInterval);
dh.setRecordInterval(recordInterval);
dh.setHistoryReportTime(historyReportTime);
dh.setHistoryInterval(historyInterval);
dh.setTemperatureHigh(temperatureHigh);
dh.setTemperatureLow(temperatureLow);
dh.setTemperatureBuffer(temperatureBuffer);
dh.setHumidityHigh(humidityHigh);
dh.setHumidityLow(humidityLow);
dh.setHumidityBuffer(humidityBuffer);
dh.setTimeCode(timeCode);
dh.setIzOutages(isOutages);
dh.setIzLowBattery(isLowBattery);
dh.setIzOnline(isOnline);
break;
}
}else{
return null;
}
}else{
return null;