mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-05-04 01:50:17 +08:00
update 电单车协议
This commit is contained in:
@@ -164,11 +164,23 @@ public class PileService {
|
|||||||
throw new BusinessException(ReturnCodeEnum.CODE_PARAM_NOT_NULL_ERROR);
|
throw new BusinessException(ReturnCodeEnum.CODE_PARAM_NOT_NULL_ERROR);
|
||||||
}
|
}
|
||||||
String pileSn;
|
String pileSn;
|
||||||
if (param.length() == 16) {
|
// param长度大于10是汽车桩, 否则是电单车桩
|
||||||
pileSn = StringUtils.substring(param, 0, param.length() - 2);
|
if (param.length() > 10) {
|
||||||
|
// 汽车桩, 桩编号14位, 枪口号2位
|
||||||
|
if (param.length() == 16) {
|
||||||
|
pileSn = StringUtils.substring(param, 0, param.length() - 2);
|
||||||
|
} else {
|
||||||
|
pileSn = param;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
pileSn = param;
|
// 电单车桩, 桩编号8位, 枪口号2位
|
||||||
|
if (param.length() == 10) {
|
||||||
|
pileSn = StringUtils.substring(param, 0, param.length() - 2);
|
||||||
|
} else {
|
||||||
|
pileSn = param;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询充电桩信息
|
// 查询充电桩信息
|
||||||
PileInfoVO pileInfoVO = pileBasicInfoService.selectPileInfoBySn(pileSn);
|
PileInfoVO pileInfoVO = pileBasicInfoService.selectPileInfoBySn(pileSn);
|
||||||
if (pileInfoVO == null) {
|
if (pileInfoVO == null) {
|
||||||
@@ -230,9 +242,12 @@ public class PileService {
|
|||||||
if (pileConnectorDetailVO == null) {
|
if (pileConnectorDetailVO == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
// 枪口状态不为2:占用(未充电)
|
// 不是电单车的桩, 需要判断插枪状态
|
||||||
if (!StringUtils.equals(PileConnectorDataBaseStatusEnum.OCCUPIED_NOT_CHARGED.getValue(), pileConnectorDetailVO.getConnectorStatus())) {
|
if (!StringUtils.equals(Constants.THREE, pileConnectorDetailVO.getChargePortType())) {
|
||||||
throw new BusinessException(ReturnCodeEnum.CODE_PILE_CONNECTOR_STATUS_ERROR);
|
// 枪口状态不为2:占用(未充电)
|
||||||
|
if (!StringUtils.equals(PileConnectorDataBaseStatusEnum.OCCUPIED_NOT_CHARGED.getValue(), pileConnectorDetailVO.getConnectorStatus())) {
|
||||||
|
throw new BusinessException(ReturnCodeEnum.CODE_PILE_CONNECTOR_STATUS_ERROR);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
String pileSn = pileConnectorDetailVO.getPileSn();
|
String pileSn = pileConnectorDetailVO.getPileSn();
|
||||||
AppletPileDetailVO resultVO = getPileDetailByPileSn(pileSn);
|
AppletPileDetailVO resultVO = getPileDetailByPileSn(pileSn);
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ public abstract class AbstractYkcHandler implements InitializingBean {
|
|||||||
*/
|
*/
|
||||||
protected void saveLastTimeAndCheckChannel(String pileSn, ChannelHandlerContext ctx) {
|
protected void saveLastTimeAndCheckChannel(String pileSn, ChannelHandlerContext ctx) {
|
||||||
String redisKey = CacheConstants.PILE_LAST_CONNECTION + pileSn;
|
String redisKey = CacheConstants.PILE_LAST_CONNECTION + pileSn;
|
||||||
redisCache.setCacheObject(redisKey, DateUtils.getDateTime(), CacheConstants.cache_expire_time_1d);
|
redisCache.setCacheObject(redisKey, DateUtils.getDateTime(), CacheConstants.cache_expire_time_30d);
|
||||||
|
|
||||||
// 保存桩号和channel的关系
|
// 保存桩号和channel的关系
|
||||||
PileChannelEntity.checkChannel(pileSn, ctx);
|
PileChannelEntity.checkChannel(pileSn, ctx);
|
||||||
|
|||||||
@@ -455,6 +455,17 @@ public class PileConnectorInfoServiceImpl implements PileConnectorInfoService {
|
|||||||
infoVO.setRatedPower(pileModelInfoVO.getRatedPower());
|
infoVO.setRatedPower(pileModelInfoVO.getRatedPower());
|
||||||
infoVO.setRatedCurrent(pileModelInfoVO.getRatedCurrent());
|
infoVO.setRatedCurrent(pileModelInfoVO.getRatedCurrent());
|
||||||
infoVO.setRatedVoltage(pileModelInfoVO.getRatedVoltage());
|
infoVO.setRatedVoltage(pileModelInfoVO.getRatedVoltage());
|
||||||
|
String chargePortType;
|
||||||
|
if (StringUtils.equals(Constants.TWO, pileModelInfoVO.getChargerPileType())) {
|
||||||
|
chargePortType = Constants.THREE;
|
||||||
|
} else {
|
||||||
|
if (StringUtils.equals(Constants.ONE, pileModelInfoVO.getSpeedType())) {
|
||||||
|
chargePortType = Constants.ONE;
|
||||||
|
} else {
|
||||||
|
chargePortType = Constants.TWO;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
infoVO.setChargePortType(chargePortType);
|
||||||
}
|
}
|
||||||
connectorInfoList.add(infoVO);
|
connectorInfoList.add(infoVO);
|
||||||
}
|
}
|
||||||
@@ -682,14 +693,14 @@ public class PileConnectorInfoServiceImpl implements PileConnectorInfoService {
|
|||||||
* @return true离线
|
* @return true离线
|
||||||
*/
|
*/
|
||||||
public boolean checkPileOffLine(String pileSn) {
|
public boolean checkPileOffLine(String pileSn) {
|
||||||
// 获取桩最后连接时间,最后连接到平台的时间在1分钟之前,判定为离线
|
// 获取桩最后连接时间,最后连接到平台的时间在3分钟之前,判定为离线
|
||||||
String lastConnectionTime = redisCache.getCacheObject(CacheConstants.PILE_LAST_CONNECTION + pileSn);
|
String lastConnectionTime = redisCache.getCacheObject(CacheConstants.PILE_LAST_CONNECTION + pileSn);
|
||||||
if (StringUtils.isBlank(lastConnectionTime)) {
|
if (StringUtils.isBlank(lastConnectionTime)) {
|
||||||
// 没有最后连接时间,返回离线
|
// 没有最后连接时间,返回离线
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
long l = DateUtils.intervalTime(lastConnectionTime, DateUtils.getDateTime());
|
long l = DateUtils.intervalTime(lastConnectionTime, DateUtils.getDateTime());
|
||||||
return l >= 1L;
|
return l > 3L;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -46,6 +46,11 @@ public class ConnectorInfoVO {
|
|||||||
*/
|
*/
|
||||||
private String chargingType;
|
private String chargingType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 充电接口类型 1-快充,2-慢充,3-电单车
|
||||||
|
*/
|
||||||
|
private String chargePortType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 额定功率
|
* 额定功率
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -60,6 +60,11 @@ public class PileInfoVO {
|
|||||||
*/
|
*/
|
||||||
private String speedType;
|
private String speedType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 充电接口类型 1-快充,2-慢充,3-电单车
|
||||||
|
*/
|
||||||
|
private String chargePortType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 枪口编号
|
* 枪口编号
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -55,5 +55,8 @@ public class PileConnectorDetailVO {
|
|||||||
*/
|
*/
|
||||||
private String softwareProtocol;
|
private String softwareProtocol;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 充电接口类型 1-快充,2-慢充,3-电单车
|
||||||
|
*/
|
||||||
|
private String chargePortType;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -132,4 +132,9 @@ public class PileDetailVO {
|
|||||||
* 型号名称
|
* 型号名称
|
||||||
*/
|
*/
|
||||||
private String modelName;
|
private String modelName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 充电接口类型 1-快充,2-慢充,3-电单车
|
||||||
|
*/
|
||||||
|
private String chargePortType;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ public class PileModelInfoVO {
|
|||||||
private String ratedVoltage;
|
private String ratedVoltage;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 充电类型
|
* 充电类型 (1-快充;2-慢充)
|
||||||
*/
|
*/
|
||||||
private String speedType;
|
private String speedType;
|
||||||
|
|
||||||
|
|||||||
@@ -308,10 +308,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
t2.pile_connector_code AS pileConnectorCode,
|
t2.pile_connector_code AS pileConnectorCode,
|
||||||
t2.status AS connectorStatus,
|
t2.status AS connectorStatus,
|
||||||
t1.business_type AS businessType,
|
t1.business_type AS businessType,
|
||||||
t1.software_protocol AS softwareProtocol
|
t1.software_protocol AS softwareProtocol,
|
||||||
|
IF(t3.charger_pile_type = '2','3',(IF(t3.speed_type = '1','1','2'))) AS chargePortType
|
||||||
FROM
|
FROM
|
||||||
pile_basic_info t1
|
pile_basic_info t1
|
||||||
JOIN pile_connector_info t2 ON t1.sn = t2.pile_sn
|
JOIN pile_connector_info t2 ON t1.sn = t2.pile_sn
|
||||||
|
join pile_model_info t3 on t3.id = t1.model_id
|
||||||
WHERE
|
WHERE
|
||||||
t2.pile_connector_code = #{pileConnectorCode,jdbcType=VARCHAR}
|
t2.pile_connector_code = #{pileConnectorCode,jdbcType=VARCHAR}
|
||||||
</select>
|
</select>
|
||||||
|
|||||||
Reference in New Issue
Block a user