update 修改结构

This commit is contained in:
Guoqs
2024-07-10 15:39:19 +08:00
parent bcb7d448ed
commit 3400dde845
58 changed files with 153 additions and 69 deletions

View File

@@ -110,7 +110,7 @@ public class SwaggerConfig {
// 用ApiInfoBuilder进行定制
return new ApiInfoBuilder()
// 设置标题
.title("标题:万车充后台管理系统_接口文档")
.title("标题:万车充运营管理平台_接口文档")
// 描述
// .description("描述:用于管理集团旗下公司的人员信息,具体包括XXX,XXX模块...")
// 作者信息

View File

@@ -1,14 +1,8 @@
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.TypeReference;
import com.alibaba.fastjson.parser.Feature;
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.alipay.api.AlipayApiException;
import com.alipay.api.internal.util.AlipayEncrypt;
import com.alipay.easysdk.base.oauth.models.AlipaySystemOauthTokenResponse;
import com.alipay.easysdk.factory.Factory;
import com.aliyun.tea.TeaUnretryableException;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -48,8 +42,8 @@ import com.jsowell.common.util.http.HttpUtils;
import com.jsowell.common.util.id.IdUtils;
import com.jsowell.common.util.id.SnowflakeIdWorker;
import com.jsowell.common.util.ip.AddressUtils;
import com.jsowell.netty.handler.HeartbeatRequestHandler;
import com.jsowell.netty.handler.TransactionRecordsRequestHandler;
import com.jsowell.netty.handler.yunkuaichong.HeartbeatRequestHandler;
import com.jsowell.netty.handler.yunkuaichong.TransactionRecordsRequestHandler;
import com.jsowell.netty.service.camera.impl.CameraBusinessServiceImpl;
import com.jsowell.netty.service.yunkuaichong.YKCBusinessService;
import com.jsowell.pile.domain.*;

View File

@@ -2,7 +2,7 @@ package com.jsowell.netty.factory;
import com.google.common.collect.Maps;
import com.jsowell.common.util.StringUtils;
import com.jsowell.netty.handler.AbstractHandler;
import com.jsowell.netty.handler.yunkuaichong.AbstractHandler;
import java.util.Map;
import java.util.Objects;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.diandanche;
import com.google.common.primitives.Bytes;
import com.jsowell.common.constant.CacheConstants;

View File

@@ -0,0 +1,92 @@
package com.jsowell.netty.handler.yunkuaichong;
import com.google.common.primitives.Bytes;
import com.jsowell.common.constant.CacheConstants;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;
import com.jsowell.common.core.redis.RedisCache;
import com.jsowell.common.enums.ykc.PileChannelEntity;
import com.jsowell.common.util.BytesUtil;
import com.jsowell.common.util.CRC16Util;
import com.jsowell.common.util.DateUtils;
import io.netty.channel.Channel;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.annotation.Autowired;
/**
* 模板方法模式
*/
public abstract class AbstractHandler implements InitializingBean {
@Autowired
private RedisCache redisCache;
/**
* 执行逻辑
* 有应答
*/
public byte[] supplyProcess(YKCDataProtocol ykcDataProtocol, Channel channel) {
throw new UnsupportedOperationException();
}
/**
* 执行逻辑
* 不需要应答
*/
// public void pushProcess() {
// throw new UnsupportedOperationException();
// }
/**
* 组装应答的结果
* @param ykcDataProtocol 请求数据
* @param messageBody 消息体
* @return 应答结果
*/
protected byte[] getResult(YKCDataProtocol ykcDataProtocol, byte[] messageBody) {
// 起始标志
byte[] head = ykcDataProtocol.getHead();
// 序列号域
byte[] serialNumber = ykcDataProtocol.getSerialNumber();
// 加密标志
byte[] encryptFlag = ykcDataProtocol.getEncryptFlag();
// 请求帧类型
byte[] requestFrameType = ykcDataProtocol.getFrameType();
// 应答帧类型
byte[] responseFrameType = YKCFrameTypeCode.ResponseRelation.getResponseFrameTypeBytes(requestFrameType);
// 数据域 值为“序列号域+加密标志+帧类型标志+消息体”字节数之和
byte[] dataFields = Bytes.concat(serialNumber, encryptFlag, responseFrameType, messageBody);
// 计算crc 从序列号域到数据域的 CRC 校验
int crc16 = CRC16Util.calcCrc16(dataFields);
return Bytes.concat(head, BytesUtil.intToBytes(dataFields.length, 1), dataFields, BytesUtil.intToBytes(crc16));
}
/**
* 保存桩最后链接到平台的时间
* @param pileSn 桩编号
*/
protected void saveLastTimeAndCheckChannel(String pileSn, Channel channel) {
String redisKey = CacheConstants.PILE_LAST_CONNECTION + pileSn;
redisCache.setCacheObject(redisKey, DateUtils.getDateTime(), CacheConstants.cache_expire_time_1d);
// 保存桩号和channel的关系
PileChannelEntity.checkChannel(pileSn, channel);
}
/**
* 阻止重复帧
* @return true 重复
*/
protected boolean verifyTheDuplicateRequest(YKCDataProtocol ykcDataProtocol, Channel channel) {
// 获取序列号域
int serialNumber = BytesUtil.bytesToIntLittle(ykcDataProtocol.getSerialNumber());
// 获取channelId
String channelId = channel.id().asShortText();
String redisKey = "Request_" + channelId + "_" + serialNumber;
Boolean result = redisCache.setnx(redisKey, ykcDataProtocol.getHEXString(), 30);
// result返回false说明没有设置成功就是说已经有相同请求了所以返回true重复
return !result;
}
}

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.google.common.primitives.Bytes;
import com.jsowell.common.constant.Constants;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.alibaba.fastjson2.JSON;
import com.google.common.primitives.Bytes;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.alibaba.fastjson2.JSON;
import com.jsowell.common.constant.CacheConstants;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.google.common.primitives.Bytes;
import com.jsowell.common.constant.Constants;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.alibaba.fastjson2.JSON;
import com.google.common.collect.Lists;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.google.common.primitives.Bytes;
import com.jsowell.common.constant.Constants;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.google.common.primitives.Bytes;
import com.jsowell.common.constant.Constants;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.alibaba.fastjson2.JSON;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.constant.Constants;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;
import com.jsowell.common.util.YKCUtils;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;
import com.jsowell.common.util.YKCUtils;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.alibaba.fastjson2.JSON;
import com.google.common.primitives.Bytes;

View File

@@ -1,4 +1,4 @@
package com.jsowell.netty.handler;
package com.jsowell.netty.handler.yunkuaichong;
import com.jsowell.common.constant.CacheConstants;
import com.jsowell.common.core.domain.ykc.RealTimeMonitorData;
@@ -17,8 +17,6 @@ import com.jsowell.pile.domain.OrderBasicInfo;
import com.jsowell.pile.service.PileBasicInfoService;
import com.jsowell.pile.service.OrderBasicInfoService;
import com.jsowell.thirdparty.common.CommonService;
import com.jsowell.thirdparty.common.NotificationDTO;
import com.jsowell.thirdparty.common.NotificationService;
import io.netty.channel.Channel;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;

View File

@@ -7,7 +7,7 @@ import com.jsowell.common.enums.ykc.PileConnectorDataBaseStatusEnum;
import com.jsowell.common.util.StringUtils;
import com.jsowell.common.util.YKCUtils;
import com.jsowell.netty.factory.YKCOperateFactory;
import com.jsowell.netty.handler.AbstractHandler;
import com.jsowell.netty.handler.yunkuaichong.AbstractHandler;
import com.jsowell.netty.service.yunkuaichong.YKCBusinessService;
import com.jsowell.pile.service.PileConnectorInfoService;
import com.jsowell.pile.service.PileMsgRecordService;

View File

@@ -1,10 +1,10 @@
# 页面标题
VUE_APP_TITLE = 万车充后台管理系统
VUE_APP_TITLE = 万车充运营管理平台
# 开发环境配置
ENV = 'development'
# 万车充后台管理系统/开发环境
# 万车充运营管理平台/开发环境
VUE_APP_BASE_API = '/dev-api'
# 路由懒加载

View File

@@ -1,8 +1,8 @@
# 页面标题
VUE_APP_TITLE = 万车充后台管理系统
VUE_APP_TITLE = 万车充运营管理平台
# 生产环境配置
ENV = 'production'
# 万车充后台管理系统/生产环境
# 万车充运营管理平台/生产环境
VUE_APP_BASE_API = '/prod-api'

View File

@@ -1,10 +1,10 @@
# 页面标题
VUE_APP_TITLE = 万车充后台管理系统
VUE_APP_TITLE = 万车充运营管理平台
# 测试环境配置
ENV = 'staging'
# 万车充后台管理系统/测试环境
# 万车充运营管理平台/测试环境
VUE_APP_BASE_API = '/dev-api'
# 开发环境配置

View File

@@ -36,7 +36,7 @@ export default {
},
data() {
return {
title: '万车充后台管理系统',
title: '万车充运营管理平台',
// logo: logoImg
}
}

View File

@@ -1,7 +1,7 @@
<template>
<div class="login">
<el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form">
<h3 class="title">万车充后台管理系统</h3>
<h3 class="title">万车充运营管理平台</h3>
<el-form-item prop="username">
<el-input v-model="loginForm.username" type="text" auto-complete="off" placeholder="账号">
<svg-icon slot="prefix" icon-class="user" class="el-input__icon input-icon" />

View File

@@ -1,7 +1,7 @@
<template>
<div class="register">
<el-form ref="registerForm" :model="registerForm" :rules="registerRules" class="register-form">
<h3 class="title">万车充后台管理系统</h3>
<h3 class="title">万车充运营管理平台</h3>
<el-form-item prop="username">
<el-input v-model="registerForm.username" type="text" auto-complete="off" placeholder="账号">
<svg-icon slot="prefix" icon-class="user" class="el-input__icon input-icon" />

View File

@@ -7,7 +7,7 @@ function resolve(dir) {
const CompressionPlugin = require("compression-webpack-plugin");
const name = process.env.VUE_APP_TITLE || "万车充后台管理系统"; // 网页标题
const name = process.env.VUE_APP_TITLE || "万车充运营管理平台"; // 网页标题
const port = process.env.port || process.env.npm_config_port || 8081; // 端口

View File

@@ -9,7 +9,7 @@
<version>1.0.0</version>
<name>jsowell</name>
<description>万车充后台管理系统</description>
<description>万车充运营管理平台</description>
<properties>
<jsowell.version>1.0.0</jsowell.version>