From 0e7665cf9a109efe25ca847c4773ed49436911ea Mon Sep 17 00:00:00 2001 From: wenhui <1455474577@qq.com> Date: Wed, 2 Mar 2022 14:11:12 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=B9=B3=E5=8F=B0?= =?UTF-8?q?=E6=88=96=E8=BF=90=E8=90=A5=E5=95=86=E7=AB=AF=E5=90=84=E7=A7=8D?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E7=94=A8=E6=88=B7=E7=9A=84=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java | 2 +- .../main/resources/mapper/XhpcCommunityPersonnelMapper.xml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java index 2a30d9f2..d650d733 100644 --- a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java +++ b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java @@ -355,7 +355,7 @@ public class XhpcCardServiceImpl implements IXhpcCardService { case 3: XhpcCustomersPersonnel xhpcCustomersPersonnel = xhpcCustomersPersonnelMapper.selectByAccount(bindCardInfo.getUserAccount()); Long customersId = xhpcCustomersPersonnel.getCustomersId(); - xhpcCustomersPersonnel.setCustomersId(customersId); + xhpcIcCardInfo.setUserId(customersId); break; default: return R.fail("没有此用户类型"); diff --git a/xhpc-modules/xhpc-card/src/main/resources/mapper/XhpcCommunityPersonnelMapper.xml b/xhpc-modules/xhpc-card/src/main/resources/mapper/XhpcCommunityPersonnelMapper.xml index 6d5413aa..c32c8689 100644 --- a/xhpc-modules/xhpc-card/src/main/resources/mapper/XhpcCommunityPersonnelMapper.xml +++ b/xhpc-modules/xhpc-card/src/main/resources/mapper/XhpcCommunityPersonnelMapper.xml @@ -58,7 +58,7 @@ and account like concat('%',#{queryCondition.userAccount},'%') - and communitiy_personnel_id not in + and community_personnel_id not in #{userId} @@ -74,7 +74,7 @@ and account like concat('%',#{queryCondition.userAccount},'%') - and communitiy_personnel_id not in + and community_personnel_id not in #{userId} From 6573045986cf5d89914adbf7c0bcca0648e493f0 Mon Sep 17 00:00:00 2001 From: wenhui <1455474577@qq.com> Date: Wed, 2 Mar 2022 16:03:42 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E5=8D=A1=E6=8E=88=E6=9D=83=E6=97=A5=E5=BF=97Bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/xhpc/card/mapper/XhpcOperatorMapper.java | 10 ++++++++++ .../xhpc/card/service/impl/XhpcCardServiceImpl.java | 2 +- .../src/main/resources/mapper/XhpcOperatorMapper.xml | 8 ++++++++ 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/mapper/XhpcOperatorMapper.java b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/mapper/XhpcOperatorMapper.java index 8172891c..d182eaec 100644 --- a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/mapper/XhpcOperatorMapper.java +++ b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/mapper/XhpcOperatorMapper.java @@ -1,6 +1,7 @@ package com.xhpc.card.mapper; import com.xhpc.card.pojo.XhpcOperator; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -36,4 +37,13 @@ public interface XhpcOperatorMapper { */ List selectAll(String tenantId); + /** + * query XhpcOperator according corpNo + * + * @author WH + * @date 2022/3/2 14:57 + * @since version-1.0 + */ + XhpcOperator selectOneByCorpNoAndTenantId(@Param("corpNo") String corpNo, @Param("tenantId") String tenantId); + } \ No newline at end of file diff --git a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java index d650d733..286e7bc8 100644 --- a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java +++ b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java @@ -508,7 +508,7 @@ public class XhpcCardServiceImpl implements IXhpcCardService { String log = tIccardLog.getLog(); CardLogInfo cardLogInfo = JSONUtil.toBean(log, CardLogInfo.class); CardLogInfo.CardInfoDTO cardInfo = cardLogInfo.getCardInfo(); - XhpcOperator operator = xhpcOperatorMapper.selectByPrimaryKey(Long.valueOf(cardInfo.getCorpNo())); + XhpcOperator operator = xhpcOperatorMapper.selectOneByCorpNoAndTenantId(cardInfo.getCorpNo(), tokenService.getLoginUser().getSysUser().getTenantId()); dataDTO.setGrantOperatorName(operator.getName()); dataDTO.setCardSerialNumber(tIccardLog.getUniqueid()); dataDTO.setOperate(Integer.valueOf(tIccardLog.getOperate())); diff --git a/xhpc-modules/xhpc-card/src/main/resources/mapper/XhpcOperatorMapper.xml b/xhpc-modules/xhpc-card/src/main/resources/mapper/XhpcOperatorMapper.xml index 32b40468..984e61e8 100644 --- a/xhpc-modules/xhpc-card/src/main/resources/mapper/XhpcOperatorMapper.xml +++ b/xhpc-modules/xhpc-card/src/main/resources/mapper/XhpcOperatorMapper.xml @@ -60,6 +60,14 @@ FROM xhpc_operator where tenant_id = #{tenantId} + delete from xhpc_operator From 472db29426342b1bd5ca70c2d32e993e9948c669 Mon Sep 17 00:00:00 2001 From: wenhui <1455474577@qq.com> Date: Thu, 3 Mar 2022 10:48:46 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=8F=91=E7=A5=A8?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/XhpcInvoiceMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xhpc-modules/xhpc-invoice/src/main/resources/mapper/XhpcInvoiceMapper.xml b/xhpc-modules/xhpc-invoice/src/main/resources/mapper/XhpcInvoiceMapper.xml index c09bd97f..f2b4bc28 100644 --- a/xhpc-modules/xhpc-invoice/src/main/resources/mapper/XhpcInvoiceMapper.xml +++ b/xhpc-modules/xhpc-invoice/src/main/resources/mapper/XhpcInvoiceMapper.xml @@ -87,7 +87,7 @@ xhpc_invoice del_flag IS NULL - + and creator = #{creator} From 7cd29efcc98badb2c14dcc806ec6f30f7f8f2fc9 Mon Sep 17 00:00:00 2001 From: zz Date: Thu, 3 Mar 2022 12:07:37 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E5=8D=8F=E8=AE=AE=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=EF=BC=8C=E5=85=BC=E5=AE=B91.0=E3=80=812.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/xhpc/pp/logic/OrderDataLogic.java | 2 +- .../java/com/xhpc/pp/logic/RateModelRequestLogic.java | 2 +- .../com/xhpc/pp/logic/RateModelValidateLogic.java | 2 +- .../java/com/xhpc/pp/logic/RealtimeDataLogic.java | 2 +- .../java/com/xhpc/pp/server/ChargingPileServer.java | 3 ++- .../main/java/com/xhpc/pp/server/RateModelTask.java | 4 ++-- .../com/xhpc/pp/utils/security/CacheDataUtils.java | 11 ++++++++++- .../xhpc-power-pile/src/main/resources/bootstrap.yml | 4 ++-- 8 files changed, 20 insertions(+), 10 deletions(-) diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/OrderDataLogic.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/OrderDataLogic.java index 6a394017..c041c25c 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/OrderDataLogic.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/OrderDataLogic.java @@ -59,7 +59,7 @@ public class OrderDataLogic implements ServiceLogic { REDIS.setCacheMap(gunkey, cacheGun); Long rdtime = (Long) cacheOrder.get("rdtime"); Map cachePile = REDIS.getCacheMap("pile:".concat(orderData.getPileNo())); - if (cachePile.get("version").equals("0B")) { + if (cachePile.get("version").equals("0C")) { final String hex = orderData.getHex(); String cdhex = hex.substring(0xA2 * 2 + 4, hex.length() - 4); if (cdhex.length() > 0) { diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RateModelRequestLogic.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RateModelRequestLogic.java index 8248b532..b1f35f72 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RateModelRequestLogic.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RateModelRequestLogic.java @@ -66,7 +66,7 @@ public class RateModelRequestLogic implements ServiceLogic { String rateModel = translate(cacheRateModel); String skey = "pile:".concat(pileNo).concat(".seqhex"); String resultStr; - if ("0A".equals(version)) + if (!"0C".equals(version)) resultStr = "685E".concat(seqHex(skey)).concat(svc).concat(pileNo).concat(String.format("%04X", stationRateModelId)).concat(rateModel); else diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RateModelValidateLogic.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RateModelValidateLogic.java index 98404078..12665367 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RateModelValidateLogic.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RateModelValidateLogic.java @@ -52,7 +52,7 @@ public class RateModelValidateLogic implements ServiceLogic { String hexCode = ServiceResult.HEX_00; Long rateModelId; String version = (String) cachePile.get("version"); - if ("0A".equals(version)) rateModelId = Long.valueOf(Integer.parseInt(rateModelIdStr, 16)); + if ("0C".equals(version)) rateModelId = Long.valueOf(HexUtils.reverseHexInt(rateModelIdStr)); else rateModelId = Long.valueOf(rateModelIdStr); Long csRateModelId = rateModelId; if (!charging) { diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RealtimeDataLogic.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RealtimeDataLogic.java index ad7a457b..04337e55 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RealtimeDataLogic.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RealtimeDataLogic.java @@ -133,7 +133,7 @@ public class RealtimeDataLogic implements ServiceLogic { Integer cacheStartSoc = (Integer) cacheOrder.get("startSoc"); if (cacheStartSoc == null && socInt != 0) cacheOrder.put("startSoc", socInt); if (socInt != 0) cacheOrder.put("endSoc", socInt); - if (cachePile.get("version").equals("0B")) { + if (cachePile.get("version").equals("0C")) { final String hex = realtimeData.getHex(); String cdhex = hex.substring(0x40 * 2 + 4, hex.length() - 4); if (cdhex.length() > 0) { diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/ChargingPileServer.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/ChargingPileServer.java index 171b8588..aa2fe3a2 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/ChargingPileServer.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/ChargingPileServer.java @@ -119,7 +119,8 @@ public class ChargingPileServer { cachePile.put("status", DISCONNECTED); REDIS.setCacheMap(pkey, cachePile); putemDisconn(pileNo, cachePile); - log.debug("remove handler [{}] for ({})", handler.getName(), pileNo); + log.debug("remove handler [{}] for ({}), now try to close conn..", handler.getName(), pileNo); + handler.closeConnection(); pileMap.remove(handler.getName()); versionMapper.remove(handler.getName()); } diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/RateModelTask.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/RateModelTask.java index 185ed381..dc5e7096 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/RateModelTask.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/RateModelTask.java @@ -30,9 +30,9 @@ public class RateModelTask { if (rateModelIdStation != null) { Set pks = stationDto.getPiles(); if (pks != null) for (String pileNo : pks) { - Long rateModelIdPile = REDIS.getCacheMapValue(pileNo, "rateModelId"); + String pk = "pile:".concat(pileNo); + Long rateModelIdPile = REDIS.getCacheMapValue(pk, "rateModelId"); if (!rateModelIdStation.equals(rateModelIdPile)) { - String pk = "pile:".concat(pileNo); String gkPattern = ("gun:").concat(pk).concat("*"); Collection gks = REDIS.keys(gkPattern); boolean charging = false; diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/utils/security/CacheDataUtils.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/utils/security/CacheDataUtils.java index 779ab9f1..aaedb618 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/utils/security/CacheDataUtils.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/utils/security/CacheDataUtils.java @@ -2,6 +2,7 @@ package com.xhpc.pp.utils.security; import cn.hutool.core.date.DateUtil; import com.xhpc.pp.utils.HexUtils; +import lombok.extern.slf4j.Slf4j; import java.lang.reflect.Constructor; import java.lang.reflect.Field; @@ -13,6 +14,7 @@ import static com.xhpc.common.core.utils.StringUtils.capitalize; import static com.xhpc.common.data.redis.StaticBeanUtil.REDIS; import static com.xhpc.pp.utils.security.CP56Time2a.cp56toDate; +@Slf4j public class CacheDataUtils { public static Object reflectTranslate(Object srcobj, Class tarclz, Class srcclz, Field[] targetfields) throws IllegalAccessException, InvocationTargetException, InstantiationException { @@ -36,7 +38,12 @@ public class CacheDataUtils { tarval = (Integer) tarval > 0 ? tarval : 0; } } else { - tarval = HexUtils.reverseHexInt(srcval); + try { + tarval = HexUtils.reverseHexInt(srcval); + } catch (java.lang.NumberFormatException e) { // todo 测试代码,不应该在生产环境运行到这里 + log.error("fatal!! 4 bytes (bin) number: {} - {}", tarfield.getName(), srcval); + tarval = 0; + } } } else if (tarFieldName.contains("ime")) { tarval = DateUtil.format(cp56toDate(srcval), NORM_DATETIME_FORMAT); @@ -47,6 +54,8 @@ public class CacheDataUtils { } tarclz.getMethod("set".concat(capitalize(tarFieldName)), tarfield.getType()).invoke(tarobj, tarval); } catch (NoSuchMethodException ignored) { + log.warn(" src[{}], tar[{}] NoSuchMethodException {}", tarclz.getName(), + srcclz.getName(), "set".concat(capitalize(tarFieldName))); } } } diff --git a/xhpc-modules/xhpc-power-pile/src/main/resources/bootstrap.yml b/xhpc-modules/xhpc-power-pile/src/main/resources/bootstrap.yml index df3a5bc9..8c12f14b 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/resources/bootstrap.yml +++ b/xhpc-modules/xhpc-power-pile/src/main/resources/bootstrap.yml @@ -18,10 +18,10 @@ spring: nacos: discovery: # 服务注册地址 - server-addr: 172.31.183.135:8848 + server-addr: 127.0.0.1:8848 config: # 配置中心地址 - server-addr: 172.31.183.135:8848 + server-addr: 127.0.0.1:8848 # 配置文件格式 file-extension: yml # 共享配置