|
|
@@ -52,11 +52,11 @@ public class KwBoxV1Controller extends BaseController { |
|
|
private ResultData cmdRegist(String imei, String ccid, Date deviceTime, Map<String,Object> paramMap) |
|
|
private ResultData cmdRegist(String imei, String ccid, Date deviceTime, Map<String,Object> paramMap) |
|
|
{ |
|
|
{ |
|
|
|
|
|
|
|
|
String fwv = (String)paramMap.get("FWV"); |
|
|
|
|
|
|
|
|
String fwv = (String)paramMap.get(KwBoxService.PREFIX_FW_VERSION); |
|
|
if (StringUtil.isNullOrEmpty(fwv)) |
|
|
if (StringUtil.isNullOrEmpty(fwv)) |
|
|
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); |
|
|
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); |
|
|
|
|
|
|
|
|
String hwv = (String)paramMap.get("HWV"); |
|
|
|
|
|
|
|
|
String hwv = (String)paramMap.get(KwBoxService.PREFIX_HW_VERSION); |
|
|
if (StringUtil.isNullOrEmpty(hwv)) |
|
|
if (StringUtil.isNullOrEmpty(hwv)) |
|
|
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); |
|
|
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); |
|
|
|
|
|
|
|
|
@@ -68,7 +68,7 @@ public class KwBoxV1Controller extends BaseController { |
|
|
if (!kwBox.getRegisterStatus().equals(EnumBoxRegisterStatus.INIT.getCode())) |
|
|
if (!kwBox.getRegisterStatus().equals(EnumBoxRegisterStatus.INIT.getCode())) |
|
|
return new ResultData(ErrorCode.DEVICE_ALREADY_EXIST); |
|
|
return new ResultData(ErrorCode.DEVICE_ALREADY_EXIST); |
|
|
|
|
|
|
|
|
saveCmd(kwBox.getTenantId(),"regist",imei,ccid,deviceTime,paramMap); |
|
|
|
|
|
|
|
|
saveCmd(kwBox.getTenantId(),KwBoxService.CMD_REGISTER,imei,ccid,deviceTime,paramMap); |
|
|
|
|
|
|
|
|
KwBox record = new KwBox(); |
|
|
KwBox record = new KwBox(); |
|
|
record.setId(kwBox.getId()); |
|
|
record.setId(kwBox.getId()); |
|
|
@@ -82,14 +82,14 @@ public class KwBoxV1Controller extends BaseController { |
|
|
kwBoxService.saveOrUpdate(record); |
|
|
kwBoxService.saveOrUpdate(record); |
|
|
Map<String,Object> data = new HashMap<>(); |
|
|
Map<String,Object> data = new HashMap<>(); |
|
|
|
|
|
|
|
|
data.put("sysStatus",record.getRegisterStatus()); |
|
|
|
|
|
|
|
|
data.put(KwBoxService.PREFIX_SYS_STATUS,record.getRegisterStatus()); |
|
|
if (kwBox.getComKey() != null) |
|
|
if (kwBox.getComKey() != null) |
|
|
data.put("comKey",kwBox.getComKey()); |
|
|
|
|
|
|
|
|
data.put(KwBoxService.PREFIX_COM_KEY,kwBox.getComKey()); |
|
|
if (kwBox.getConfig() != null) |
|
|
if (kwBox.getConfig() != null) |
|
|
data.put("config",kwBox.getConfig()); |
|
|
|
|
|
|
|
|
data.put(KwBoxService.PREFIX_CONFIG,kwBox.getConfig()); |
|
|
List<String> meters = kwBoxService.findMetersAddress(kwBox); |
|
|
List<String> meters = kwBoxService.findMetersAddress(kwBox); |
|
|
if (!meters.isEmpty()) |
|
|
if (!meters.isEmpty()) |
|
|
data.put("meters",meters); |
|
|
|
|
|
|
|
|
data.put(KwBoxService.PREFIX_METERS,meters); |
|
|
return new ResultData(data); |
|
|
return new ResultData(data); |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
@@ -104,7 +104,7 @@ public class KwBoxV1Controller extends BaseController { |
|
|
if (!kwBox.getRegisterStatus().equals(EnumBoxRegisterStatus.REGISTERED.getCode())) |
|
|
if (!kwBox.getRegisterStatus().equals(EnumBoxRegisterStatus.REGISTERED.getCode())) |
|
|
return new ResultData(ErrorCode.DEVICE_NOT_FOUND); |
|
|
return new ResultData(ErrorCode.DEVICE_NOT_FOUND); |
|
|
|
|
|
|
|
|
saveCmd(kwBox.getTenantId(),"login",imei,ccid,deviceTime,paramMap); |
|
|
|
|
|
|
|
|
saveCmd(kwBox.getTenantId(),KwBoxService.CMD_LOGIN,imei,ccid,deviceTime,paramMap); |
|
|
|
|
|
|
|
|
KwBox record = new KwBox(); |
|
|
KwBox record = new KwBox(); |
|
|
record.setId(kwBox.getId()); |
|
|
record.setId(kwBox.getId()); |
|
|
@@ -114,7 +114,7 @@ public class KwBoxV1Controller extends BaseController { |
|
|
kwBoxService.saveOrUpdate(record); |
|
|
kwBoxService.saveOrUpdate(record); |
|
|
Map<String,Object> data = new HashMap<>(); |
|
|
Map<String,Object> data = new HashMap<>(); |
|
|
if (kwBox.getConfig() != null) |
|
|
if (kwBox.getConfig() != null) |
|
|
data.put("config",kwBox.getConfig() ); |
|
|
|
|
|
|
|
|
data.put(KwBoxService.PREFIX_CONFIG,kwBox.getConfig() ); |
|
|
return new ResultData(data); |
|
|
return new ResultData(data); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@@ -129,27 +129,17 @@ public class KwBoxV1Controller extends BaseController { |
|
|
if (!kwBox.getRegisterStatus().equals(EnumBoxRegisterStatus.REGISTERED.getCode())) |
|
|
if (!kwBox.getRegisterStatus().equals(EnumBoxRegisterStatus.REGISTERED.getCode())) |
|
|
return new ResultData(ErrorCode.DEVICE_NOT_FOUND); |
|
|
return new ResultData(ErrorCode.DEVICE_NOT_FOUND); |
|
|
|
|
|
|
|
|
saveCmd(kwBox.getTenantId(),"hb",imei,ccid,deviceTime,paramMap); |
|
|
|
|
|
|
|
|
saveCmd(kwBox.getTenantId(),KwBoxService.CMD_HEARTBEAT,imei,ccid,deviceTime,paramMap); |
|
|
|
|
|
|
|
|
KwBox record = new KwBox(); |
|
|
KwBox record = new KwBox(); |
|
|
record.setId(kwBox.getId()); |
|
|
record.setId(kwBox.getId()); |
|
|
record.setLastOnlineTime(new Date()); |
|
|
record.setLastOnlineTime(new Date()); |
|
|
|
|
|
|
|
|
kwBoxService.saveOrUpdate(record); |
|
|
kwBoxService.saveOrUpdate(record); |
|
|
Map<String,Object> resData = new HashMap<>(); |
|
|
|
|
|
|
|
|
|
|
|
List<Map<String,String>> metersData = (List<Map<String,String>>)paramMap.get("meters"); |
|
|
List<Map<String,String>> metersData = (List<Map<String,String>>)paramMap.get("meters"); |
|
|
|
|
|
|
|
|
if (!metersData.isEmpty()) { |
|
|
|
|
|
metersData.stream().forEach(m->{ |
|
|
|
|
|
String addr = m.get("addr"); |
|
|
|
|
|
String activePower = m.get("ap"); //active power |
|
|
|
|
|
kwBoxService.saveMeterData(kwBox, deviceTime, addr, activePower); |
|
|
|
|
|
}); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
kwBoxService.saveMeterData(kwBox, metersData, deviceTime); |
|
|
|
|
|
|
|
|
List<String> meters = kwBoxService.findMetersAddress(kwBox); |
|
|
List<String> meters = kwBoxService.findMetersAddress(kwBox); |
|
|
|
|
|
|
|
|
boolean updateMeters = false; |
|
|
boolean updateMeters = false; |
|
|
boolean updateConfig = false; |
|
|
boolean updateConfig = false; |
|
|
|
|
|
|
|
|
@@ -161,11 +151,12 @@ public class KwBoxV1Controller extends BaseController { |
|
|
updateMeters = true; |
|
|
updateMeters = true; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
Map<String,Object> resData = new HashMap<>(); |
|
|
if (updateMeters) { |
|
|
if (updateMeters) { |
|
|
resData.put("meters", meters); |
|
|
|
|
|
|
|
|
resData.put(KwBoxService.PREFIX_METERS, meters); |
|
|
} |
|
|
} |
|
|
if (updateConfig) { |
|
|
if (updateConfig) { |
|
|
resData.put("config", kwBox.getConfig()); |
|
|
|
|
|
|
|
|
resData.put(KwBoxService.PREFIX_CONFIG, kwBox.getConfig()); |
|
|
} |
|
|
} |
|
|
return new ResultData(resData); |
|
|
return new ResultData(resData); |
|
|
|
|
|
|
|
|
@@ -179,19 +170,19 @@ public class KwBoxV1Controller extends BaseController { |
|
|
@PostMapping("command") |
|
|
@PostMapping("command") |
|
|
public Result command(@RequestBody Map<String,Object> paramMap) { |
|
|
public Result command(@RequestBody Map<String,Object> paramMap) { |
|
|
|
|
|
|
|
|
String cmd = (String)paramMap.get("CMD"); |
|
|
|
|
|
|
|
|
String cmd = (String)paramMap.get(KwBoxService.PREFIX_CMD); |
|
|
if (StringUtil.isNullOrEmpty(cmd)) |
|
|
if (StringUtil.isNullOrEmpty(cmd)) |
|
|
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); |
|
|
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); |
|
|
|
|
|
|
|
|
String imei = (String)paramMap.get("IMEI"); |
|
|
|
|
|
|
|
|
String imei = (String)paramMap.get(KwBoxService.PREFIX_IMEI); |
|
|
if (StringUtil.isNullOrEmpty(imei)) |
|
|
if (StringUtil.isNullOrEmpty(imei)) |
|
|
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); |
|
|
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); |
|
|
|
|
|
|
|
|
String ccid = (String)paramMap.get("CCID"); |
|
|
|
|
|
|
|
|
String ccid = (String)paramMap.get(KwBoxService.PREFIX_ICCID); |
|
|
if (StringUtil.isNullOrEmpty(ccid)) |
|
|
if (StringUtil.isNullOrEmpty(ccid)) |
|
|
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); |
|
|
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); |
|
|
|
|
|
|
|
|
String time = (String)paramMap.get("TIME"); |
|
|
|
|
|
|
|
|
String time = (String)paramMap.get(KwBoxService.PREFIX_TIME); |
|
|
if (StringUtil.isNullOrEmpty(time)) |
|
|
if (StringUtil.isNullOrEmpty(time)) |
|
|
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); |
|
|
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); |
|
|
|
|
|
|
|
|
@@ -206,11 +197,11 @@ public class KwBoxV1Controller extends BaseController { |
|
|
|
|
|
|
|
|
switch(cmd) |
|
|
switch(cmd) |
|
|
{ |
|
|
{ |
|
|
case "regist": |
|
|
|
|
|
|
|
|
case KwBoxService.CMD_REGISTER: |
|
|
return cmdRegist(imei,ccid,deviceTime,paramMap); |
|
|
return cmdRegist(imei,ccid,deviceTime,paramMap); |
|
|
case "login": |
|
|
|
|
|
|
|
|
case KwBoxService.CMD_LOGIN: |
|
|
return cmdLogin(imei,ccid,deviceTime,paramMap); |
|
|
return cmdLogin(imei,ccid,deviceTime,paramMap); |
|
|
case "hb": |
|
|
|
|
|
|
|
|
case KwBoxService.CMD_HEARTBEAT: |
|
|
return cmdHb(imei,ccid,deviceTime,paramMap); |
|
|
return cmdHb(imei,ccid,deviceTime,paramMap); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|