解决包冲突导致启动失败

This commit is contained in:
ZZ 2022-02-22 10:49:25 +08:00
parent c770797b61
commit af66968dbf
29 changed files with 61 additions and 64 deletions

View File

@ -9,9 +9,9 @@ import com.xhpc.common.core.domain.R;
import com.xhpc.common.core.utils.HttpUtils;
import com.xhpc.common.data.down.StartChargingData;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.pp.logic.RateModelRequestLogic;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.server.ChargingPileServer;
import com.xhpc.pp.utils.HexUtils;
import com.xhpc.pp.utils.security.CRCCalculator;

View File

@ -4,7 +4,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.xhpc.common.data.up.BalanceUpdateReplyData;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;

View File

@ -2,7 +2,7 @@ package com.xhpc.pp.logic;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;

View File

@ -2,7 +2,7 @@ package com.xhpc.pp.logic;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;

View File

@ -2,7 +2,7 @@ package com.xhpc.pp.logic;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;
@ -28,7 +28,7 @@ public class BmsChargingConfigDataLogic implements ServiceLogic {
String remark = "充电桩与 BMS 参数配置阶段报文";
Map<String, Object> req = sp.getParameters();
XhpcDeviceMessage deviceMessage = new XhpcDeviceMessage();
deviceMessage.setType(StationDeviceEnum.PILE.getCode());
deviceMessage.setSerialNumber(sp.getPileNo());

View File

@ -2,7 +2,7 @@ package com.xhpc.pp.logic;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;

View File

@ -2,7 +2,7 @@ package com.xhpc.pp.logic;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;

View File

@ -2,7 +2,7 @@ package com.xhpc.pp.logic;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;

View File

@ -2,7 +2,7 @@ package com.xhpc.pp.logic;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;

View File

@ -2,7 +2,7 @@ package com.xhpc.pp.logic;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;

View File

@ -2,7 +2,7 @@ package com.xhpc.pp.logic;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;
@ -17,7 +17,7 @@ import javax.annotation.Resource;
@Component("OfflineCardEraseReplyDataLogic")
public class OfflineCardEraseReplyDataLogic implements ServiceLogic {
private static Logger log = LoggerFactory.getLogger(OfflineCardEraseReplyDataLogic.class);
private static final Logger log = LoggerFactory.getLogger(OfflineCardEraseReplyDataLogic.class);
@Resource
XhpcDeviceMessageMapper deviceMessageMapper;

View File

@ -2,7 +2,7 @@ package com.xhpc.pp.logic;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;
@ -17,7 +17,7 @@ import javax.annotation.Resource;
@Component("OfflineCardInquiryReplyDataLogic")
public class OfflineCardInquiryReplyDataLogic implements ServiceLogic {
private static Logger log = LoggerFactory.getLogger(OfflineCardInquiryReplyDataLogic.class);
private static final Logger log = LoggerFactory.getLogger(OfflineCardInquiryReplyDataLogic.class);
@Resource
XhpcDeviceMessageMapper deviceMessageMapper;

View File

@ -4,7 +4,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.xhpc.common.data.up.OfflineCardSyncReplyData;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;
@ -20,7 +20,7 @@ import java.util.Map;
@Component("OfflineCardSyncReplyDataLogic")
public class OfflineCardSyncReplyDataLogic implements ServiceLogic {
private static Logger log = LoggerFactory.getLogger(OfflineCardSyncReplyDataLogic.class);
private static final Logger log = LoggerFactory.getLogger(OfflineCardSyncReplyDataLogic.class);
@Resource
XhpcDeviceMessageMapper deviceMessageMapper;

View File

@ -4,7 +4,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.xhpc.common.data.up.PileConfigReplyData;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;
@ -20,7 +20,7 @@ import java.util.Map;
@Component("PileConfigReplyDataLogic")
public class PileConfigReplyDataLogic implements ServiceLogic {
private static Logger log = LoggerFactory.getLogger(PileConfigReplyDataLogic.class);
private static final Logger log = LoggerFactory.getLogger(PileConfigReplyDataLogic.class);
@Resource
XhpcDeviceMessageMapper deviceMessageMapper;

View File

@ -1,13 +1,15 @@
package com.xhpc.pp.logic;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.xhpc.common.api.CardService;
import com.xhpc.common.core.domain.R;
import com.xhpc.common.data.up.PileStartChargingData;
import com.xhpc.common.domain.IccardInfo;
import com.xhpc.common.domain.IccardInfoExample;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.iccard.mapper.IccardInfoMapper;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.pp.mapper.IccardInfoMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;
@ -21,7 +23,7 @@ import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
import static com.xhpc.pp.tx.ServiceResult.HEX_00;
import static com.xhpc.common.data.redis.StaticBeanUtil.genOrder;
@Lazy
@Component("PileStartChargingDataLogic")
@ -33,20 +35,24 @@ public class PileStartChargingDataLogic implements ServiceLogic {
private XhpcDeviceMessageMapper deviceMessageMapper;
@Resource
private IccardInfoMapper iccardInfoMapper;
@Resource
private CardService cardService;
@Override
public ServiceResult service(ServiceParameter sp) throws Exception {
String resultStr = null;
String result = ServiceResult.FAIL;
String resultStr = "00";
String result = ServiceResult.HEX_00;
Map<String, Object> req = sp.getParameters();
ObjectMapper objectMapper = new ObjectMapper();
PileStartChargingData pileStartChargingData = objectMapper.convertValue(req, PileStartChargingData.class);
String connectorId = pileStartChargingData.getPileNo().concat(pileStartChargingData.getGunId());
//todo 桩停用
String accountOrCardNo = pileStartChargingData.getAccountOrCardNo();
String corpNo = connectorId.substring(0, 6);
String balance = "0000";
String cardNo = "00000000";
String orderNo = "00000000000000000000000000000000";
if (pileStartChargingData.getStartType().equals("01")) { //刷卡启动
IccardInfoExample example = new IccardInfoExample();
IccardInfoExample.Criteria criteria = example.createCriteria();
@ -54,28 +60,23 @@ public class PileStartChargingDataLogic implements ServiceLogic {
List<IccardInfo> iccardInfos = iccardInfoMapper.selectByExample(example);
if (iccardInfos.size() == 1) {
IccardInfo iccardInfo = iccardInfos.get(0);
cardNo = iccardInfo.getCardno();
//todo 桩停用
if (!iccardInfo.getCorpno().equals(corpNo)) {
if (iccardInfo.getCardtype() == 0) {
resultStr = "06";
} else if (HEX_00.equals(pileStartChargingData.getPasswordRequired())
|| (HEX_00.equals(pileStartChargingData.getPasswordRequired()) && pileStartChargingData.getPassword().equals(iccardInfo.getPassword()))) {
int balanceInt = iccardInfo.getBalance();
balance = HexUtils.toHexInt(balanceInt);
if (balanceInt < 100) {
resultStr = "01";
result = ServiceResult.OK;
} else {
resultStr = "03";
} else {
// 调用订单接口 todo
orderNo = genOrder(connectorId);
R r = cardService.cardStartup(cardNo, orderNo, pileStartChargingData.getRateModelId().toString());
if (r.getCode() == 200) {
result = ServiceResult.HEX_01;
}
} else if (iccardInfo.getStatus() != 1) {
result = "02";
resultStr = r.getMsg();
}
} else {
result = "01";
resultStr = "01";
}
}
String remark = "充电桩主动申请起动充电";
String hex = orderNo.concat(connectorId).concat(cardNo).concat(balance).concat(resultStr).concat(result); //todo
String remark = "充电桩发起充电";
XhpcDeviceMessage deviceMessage = new XhpcDeviceMessage();
deviceMessage.setType(StationDeviceEnum.PILE.getCode());
deviceMessage.setSerialNumber(connectorId);
@ -83,8 +84,6 @@ public class PileStartChargingDataLogic implements ServiceLogic {
deviceMessage.setStatus(0);
deviceMessage.setContent((String) req.get("hex"));
deviceMessageMapper.insertByDomain(deviceMessage);
String hex = "orderNo".concat(connectorId).concat(cardNo).concat(balance).concat(resultStr).concat(result); //todo
// 调用订单接口
return new ServiceResult(HexUtils.toBytes(hex), result);
}

View File

@ -5,7 +5,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.xhpc.common.data.up.PileTimeConfigReplyData;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;

View File

@ -5,7 +5,7 @@ import com.xhpc.common.api.dto.ChargingStationDto;
import com.xhpc.common.data.up.PileConfigReplyData;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;
@ -24,7 +24,7 @@ import static com.xhpc.pp.tx.ServiceResult.*;
@Component("RateModelConfigReplyDataLogic")
public class RateModelConfigReplyDataLogic implements ServiceLogic {
private static Logger log = LoggerFactory.getLogger(RateModelConfigReplyDataLogic.class);
private static final Logger log = LoggerFactory.getLogger(RateModelConfigReplyDataLogic.class);
@Resource
XhpcDeviceMessageMapper deviceMessageMapper;

View File

@ -6,7 +6,7 @@ import com.xhpc.common.api.dto.ChargingStationDto;
import com.xhpc.common.data.redis.CacheRateModel;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;
@ -28,7 +28,7 @@ import static com.xhpc.pp.utils.HexUtils.toHexInt;
@Component("RateModelRequestLogic")
public class RateModelRequestLogic implements ServiceLogic {
private static Logger log = LoggerFactory.getLogger(RateModelRequestLogic.class);
private static final Logger log = LoggerFactory.getLogger(RateModelRequestLogic.class);
@Resource
XhpcDeviceMessageMapper deviceMessageMapper;
@ -46,7 +46,7 @@ public class RateModelRequestLogic implements ServiceLogic {
ObjectMapper mapper = new ObjectMapper();
ObjectNode json = mapper.createObjectNode();
json.put("error", "场站没有设置费率");
return new ServiceResult((byte[]) null, ServiceResult.FAIL, json);
return new ServiceResult(null, ServiceResult.FAIL, json);
}
String resultStr = translate(pileNo, stationRateModelId, "000A");

View File

@ -3,7 +3,7 @@ package com.xhpc.pp.logic;
import com.xhpc.common.api.dto.ChargingStationDto;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;
@ -25,7 +25,7 @@ import static com.xhpc.common.data.redis.StaticBeanUtil.seqHex;
@Component("RateModelValidateLogic")
public class RateModelValidateLogic implements ServiceLogic {
private static Logger log = LoggerFactory.getLogger(RateModelValidateLogic.class);
private static final Logger log = LoggerFactory.getLogger(RateModelValidateLogic.class);
@Resource
XhpcDeviceMessageMapper deviceMessageMapper;

View File

@ -3,7 +3,7 @@ package com.xhpc.pp.logic;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.evcs.dto.ConnectorStatusInfo;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;

View File

@ -4,7 +4,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.xhpc.common.data.up.PileConfigReplyData;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;
@ -20,7 +20,7 @@ import java.util.Map;
@Component("RemoteRestartReplyDataLogic")
public class RemoteRestartReplyDataLogic implements ServiceLogic {
private static Logger log = LoggerFactory.getLogger(RemoteRestartReplyDataLogic.class);
private static final Logger log = LoggerFactory.getLogger(RemoteRestartReplyDataLogic.class);
@Resource
XhpcDeviceMessageMapper deviceMessageMapper;

View File

@ -4,7 +4,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.xhpc.common.data.up.PileConfigReplyData;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.logic.ServiceLogic;
@ -20,7 +20,7 @@ import java.util.Map;
@Component("RemoteUpgradeReplyDataLogic")
public class RemoteUpgradeReplyDataLogic implements ServiceLogic {
private static Logger log = LoggerFactory.getLogger(RemoteUpgradeReplyDataLogic.class);
private static final Logger log = LoggerFactory.getLogger(RemoteUpgradeReplyDataLogic.class);
@Resource
XhpcDeviceMessageMapper deviceMessageMapper;

View File

@ -1,4 +1,4 @@
package com.xhpc.mapper;
package com.xhpc.pp.mapper;
import com.xhpc.pp.domain.XhpcDeviceMessage;

View File

@ -1,4 +1,4 @@
package com.xhpc.mapper;
package com.xhpc.pp.mapper;
import com.xhpc.pp.domain.XhpcMessage;

View File

@ -4,11 +4,11 @@ import cn.hutool.core.date.DateUtil;
import com.alibaba.nacos.api.exception.NacosException;
import com.xhpc.common.api.dto.ChargingStationDto;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.domain.ServiceField;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.pp.logic.FieldLogic;
import com.xhpc.pp.logic.ServiceMainLogic;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.tx.ServiceParameter;
import com.xhpc.pp.tx.ServiceResult;
import com.xhpc.pp.tx.TxException;

View File

@ -1,10 +1,9 @@
package com.xhpc.pp.server;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.xhpc.common.enums.StationDeviceEnum;
import com.xhpc.pp.domain.XhpcDeviceMessage;
import com.xhpc.mapper.XhpcDeviceMessageMapper;
import com.xhpc.pp.mapper.XhpcDeviceMessageMapper;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

View File

@ -1,9 +1,8 @@
package com.xhpc.pp.server;
import cn.hutool.core.convert.Convert;
import com.xhpc.common.util.DateUtil;
import com.xhpc.mapper.XhpcMessageMapper;
import com.xhpc.pp.mapper.XhpcMessageMapper;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

View File

@ -1,7 +1,7 @@
<?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.xhpc.mapper.XhpcDeviceMessageMapper">
<mapper namespace="com.xhpc.pp.mapper.XhpcDeviceMessageMapper">
<resultMap type="com.xhpc.pp.domain.XhpcDeviceMessage" id="XhpcDeviceMessageResult">
<id property="deviceMessageId" column="device_message_id"/>

View File

@ -1,7 +1,7 @@
<?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.xhpc.mapper.XhpcMessageMapper">
<mapper namespace="com.xhpc.pp.mapper.XhpcMessageMapper">
<resultMap type="com.xhpc.pp.domain.XhpcMessage" id="XhpcMessageResult">
<id property="messageId" column="message_id"/>