2025年07月10日 1.1.14 优化参数下发页面日志精简打印标识为[FRONTEND],同时参数下发查询查询条件优化

main
gaoshuguang 4 months ago
parent c9f2059076
commit 692de471cd

@ -46,6 +46,7 @@ public class Constant {
public static final String STR_SLASH = "/";
public static final String NULL_STRING = "";
public static final String STR_000000 = "000000";
public static final String STR_FRONTEND = "[FRONTEND]";
public static final String FIELD_SEPARATE = ",";

@ -38,6 +38,7 @@ public enum MessageEnum {
("20018", "未找到最小费额文件"),
("20019", "暂不支持上传功能"),
("20020", "上传文件失败"),
("20021", "回调处理失败"),
("99999","操作失败"),
;
private String code;

@ -5,6 +5,7 @@ import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.classic.spi.IThrowableProxy;
import ch.qos.logback.classic.spi.ThrowableProxyUtil;
import ch.qos.logback.core.spi.FilterReply;
import com.nm.gsgl.common.Constant;
import java.text.SimpleDateFormat;
import java.util.Date;
@ -30,18 +31,27 @@ public class LoggerFilter extends ThresholdFilter {
*/
@Override
public FilterReply decide(ILoggingEvent event) {
LoggerMessage log = new LoggerMessage();
log.setClassInfo(event.getLoggerName());
log.setLogTime(formatTime(event.getTimeStamp()));
log.setLogInfo(event.getFormattedMessage());
log.setLogLevel(event.getLevel().levelStr);
String exception = "";
IThrowableProxy throwableProxy = event.getThrowableProxy();
if (throwableProxy != null) {
exception = ThrowableProxyUtil.asString(throwableProxy);
String formattedMessage = event.getFormattedMessage();
// 只处理包含 [FRONTEND] 标记的日志
if (formattedMessage != null && formattedMessage.contains(Constant.STR_FRONTEND)) {
LoggerMessage log = new LoggerMessage();
log.setClassInfo(event.getLoggerName());
log.setLogTime(formatTime(event.getTimeStamp()));
log.setLogInfo(formattedMessage);
log.setLogLevel(event.getLevel().levelStr);
String exception = "";
IThrowableProxy throwableProxy = event.getThrowableProxy();
if (throwableProxy != null) {
exception = ThrowableProxyUtil.asString(throwableProxy);
}
log.setErrorInfo(exception);
// 加入队列
LoggerQueue.getInstance().push(log);
}
log.setErrorInfo(exception);
LoggerQueue.getInstance().push(log);
return FilterReply.ACCEPT;
}
}

@ -28,7 +28,10 @@ public class WebSocket {
for (WebSocket webSocket : webSocketMap.values()) {
if (webSocket != null) {
try {
webSocket.session.getBasicRemote().sendText(message);
// 只发送带有 [FRONTEND] 标记的日志
if (message.contains("[FRONTEND]")) {
webSocket.session.getBasicRemote().sendText(message);
}
} catch (IOException e) {
e.printStackTrace();
}
@ -50,7 +53,8 @@ public class WebSocket {
public void onOpen(Session session, @PathParam("userId") String userId) {
this.session = session;
webSocketMap.put(userId, this);
sendMessage("CONNECT_SUCCESS");
//sendMessage("CONNECT_SUCCESS");
sendMessage(Constant.STR_FRONTEND+"连接成功");
System.out.println("【websocket消息】有新的连接,连接id" + userId);
}

@ -4,6 +4,8 @@ import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.nm.gsgl.common.Constant;
import com.nm.gsgl.common.enumeration.MessageEnum;
import com.nm.gsgl.common.exception.PPException;
import com.nm.gsgl.common.utils.DateTimeUtil;
import com.nm.gsgl.common.utils.UuidUtil;
import com.nm.gsgl.entity.Instructions;
@ -57,7 +59,7 @@ public class HttpCallBackServiceImpl implements HttpCallBackService {
@Override
public void callBackWjt(String callBackStr) {
String uuid = UuidUtil.getUuid();
log.info("[uuid:{}]-接收下载回调指令:{}", uuid, callBackStr);
log.info("[uuid:{}]-{}-接收下载回调指令:{}", uuid, Constant.STR_FRONTEND,callBackStr);
try {
WjtCallback callback = JSON.parseObject(callBackStr, WjtCallback.class);
if (callback != null) {
@ -98,10 +100,10 @@ public class HttpCallBackServiceImpl implements HttpCallBackService {
result.setJgDt(date);
if(code==200){
result.setJgFlag(1);
log.info("[uuid:{}]-站名称={},ip={},端口号port={},接收文件-{}-成功", uuid, callback.getStaName(),callback.getIp(),callback.getPort(),callback.getZlibName());
log.info("[uuid:{}]-{}-站名称={},ip={},端口号port={},接收文件-{}-成功", uuid, Constant.STR_FRONTEND, callback.getStaName(),callback.getIp(),callback.getPort(),callback.getZlibName());
}else {
result.setJgFlag(-1);
log.error("[uuid:{}]-站名称={},ip={},端口号port={},接收文件-{}-失败,返回消息={}", uuid, callback.getStaName(),callback.getIp(),callback.getPort(),callback.getZlibName(),callback.getMsg());
log.error("[uuid:{}]-{}-站名称={},ip={},端口号port={},接收文件-{}-失败,返回消息={}", uuid, Constant.STR_FRONTEND, callback.getStaName(),callback.getIp(),callback.getPort(),callback.getZlibName(),callback.getMsg());
}
result.setJgText(callback.getMsg());
result.setSendComNo(callback.getRoadNo());
@ -114,7 +116,8 @@ public class HttpCallBackServiceImpl implements HttpCallBackService {
}
}
} catch (Exception e) {
log.error("[uuid:{}]-下载回调指令处理失败,报错{}" ,uuid,e.getMessage(),e);
log.error("[uuid:{}]-{}-下载回调指令处理失败,报错{}" ,uuid,Constant.STR_FRONTEND,e.getMessage(),e);
throw new PPException(MessageEnum..getCode(), MessageEnum..getMessage());
}
}
}

@ -192,7 +192,7 @@ public class ManualIssueServiceImpl implements ManualIssueService {
@Override
public void handSendInfo(Map<String, Object> map) {
String uuid = UuidUtil.getUuid();
log.info("[uuid:{}]-开始手动下发参数数据", uuid);
log.info("[uuid:{}]-{}-开始手动下发参数数据", uuid,Constant.STR_FRONTEND);
//String protocolType = String.valueOf(map.get("protocolType"));
List<Integer> ids = (List<Integer>) map.get("ids");
String checkedNodes = JSON.toJSONString(map.get("checkedNodes"));
@ -203,37 +203,13 @@ public class ManualIssueServiceImpl implements ManualIssueService {
//String decryptManNo = DESUtil.decrypt(manno.replace("AAAAA", "/").replace("\\", "BBBBB"));
String decryptManNo = DESUtil.decrypt(manno);
if (StringUtils.isBlank(decryptManNo)) {
log.error("[uuid:{}]-{}-工号解密失败,请重新登录", uuid,Constant.STR_FRONTEND);
throw new RuntimeException("解密失败,请重新登录");
} else if ("admin".equals(decryptManNo)) {
decryptManNo = "-1";
}
//log.info("man====={}",man);
//log.info("manno====={}",manno);
//log.info("decryptManNo====={}",decryptManNo);
List<SetUpTable> list = JSON.parseObject(checkedNodes, new TypeReference<List<SetUpTable>>() {
});
//int count = 0;
//if (list != null && list.size() > 0) {
// log.info("[uuid:{}]-开始保存已选车道,条数为{}", uuid, list.size());
// UpdateWrapper<SetupTable> updateWrapper = new UpdateWrapper<>();
// updateWrapper.set("UNUSE12", 0);
// setupTableMapper.update(null, updateWrapper);
// for (SetUpTable setUpTable : list) {
// if (StringUtils.isNotBlank(setUpTable.getPORTIP())) {
// UpdateWrapper<SetupTable> setupTableUpdateWrapper = new UpdateWrapper<>();
// setupTableUpdateWrapper.eq("ROADNO", setUpTable.getROADNO())
// .eq("STANO", setUpTable.getSTANO())
// .eq("PORTNO", setUpTable.getPORTNO())
// .set("UNUSE12", 1);
// setupTableMapper.update(null, setupTableUpdateWrapper);
// count++;
// }
//
// }
// log.info("[uuid:{}]-更新已选车道,条数为{}", uuid, count);
//} else {
// log.info("[uuid:{}]-未选择车道条数为0", uuid);
//}
for (Integer protocolType : ids) {
@ -376,26 +352,6 @@ public class ManualIssueServiceImpl implements ManualIssueService {
String md5 = MD5Util.getMd5ByFilePath(DownloadPath + File.separator + fileName);
//版本号
String version = cmsParameter.getQgCsVerNo();
////下传日期
//String isDate = DateTimeUtil.getFormateString(new Date(), Constant.YYYY_MM_DD);
////序列号
//int lastNum = 1;
////先查询CMS_DOWNLOG_JAVA中下发的批次号
////判断当前是否是Oracle
//List<CmsDownLog> cmsDownLogs;
//if (Constant.STR_TWO.equals(DBType)) {
// cmsDownLogs = cmsDownLogMapper.selectListOracle(paraId, isDate);
//} else {
// QueryWrapper<CmsDownLog> downLogQueryWrapper = new QueryWrapper<>();
// downLogQueryWrapper.select("NUM").eq("PARAID", paraId)
// .eq("DT", isDate)
// .lt("NUM", 10000);
// cmsDownLogs = cmsDownLogMapper.selectList(downLogQueryWrapper);
//}
//if (cmsDownLogs != null && cmsDownLogs.size() > 0) {
// cmsDownLogs.sort(Comparator.comparing(CmsDownLog::getNum).reversed());
// lastNum = cmsDownLogs.get(0).getNum() + 1;
//}
String socketStr = conStringMin(String.valueOf(protocolType), paraName, fileName, isZlib, ip, downUrl, backUrl, md5, version, isDate, lastNum, roadNo, staNo, portNo);
//查询获取车道的ip
@ -424,10 +380,10 @@ public class ManualIssueServiceImpl implements ManualIssueService {
sendSocket(portIp, Integer.valueOf(socketPort), socketStr);
cms.setZlFlag(1);
cms.setZlText("指令发送成功");
log.info("[uuid:{}]-ip:{},发送车道指令成功!", uuid, portIp);
log.info("[uuid:{}]-{}-ip:{},发送车道指令成功!", uuid, Constant.STR_FRONTEND,portIp);
//cmsDownLogMapper.insert(cms);
} else {
log.error("[uuid:{}]-ip{},端口号{},无法访问!", uuid, portIp, socketPort);
log.error("[uuid:{}]-{}-ip{},端口号{},无法访问!", uuid,Constant.STR_FRONTEND, portIp, socketPort);
cms.setZlFlag(-1);
cms.setZlText("网络故障");
//cmsDownLogMapper.insert(cms);
@ -435,12 +391,10 @@ public class ManualIssueServiceImpl implements ManualIssueService {
}
cmsDownLogMapper.insert(cms);
} else {
log.error("[uuid:{}]-当前分中心没有站编号为{},下发的文件{}不存在", uuid, staNo, DownloadPath + File.separator + fileName);
log.error("[uuid:{}]-{}-当前分中心没有站编号为{},下发的文件{}不存在", uuid,Constant.STR_FRONTEND, staNo, DownloadPath + File.separator + fileName);
throw new PPException(MessageEnum..getCode(), MessageEnum..getMessage());
}
}
}
}
@ -482,27 +436,6 @@ public class ManualIssueServiceImpl implements ManualIssueService {
String md5 = cmsParameter.getQgCsMd5();
//版本号
String version = cmsParameter.getQgCsVerNo();
////下传日期
//String isDate = DateTimeUtil.getFormateString(new Date(), Constant.YYYY_MM_DD);
////序列号
//int lastNum = 1;
////先查询CMS_DOWNLOG_JAVA中下发的批次号
////判断当前是否是Oracle
//List<CmsDownLog> cmsDownLogs;
//if (Constant.STR_TWO.equals(DBType)) {
// cmsDownLogs = cmsDownLogMapper.selectListOracle(paraId, isDate);
//} else {
// QueryWrapper<CmsDownLog> downLogQueryWrapper = new QueryWrapper<>();
// downLogQueryWrapper.select("NUM").eq("PARAID", paraId)
// .eq("DT", isDate)
// .lt("NUM", 10000);
// cmsDownLogs = cmsDownLogMapper.selectList(downLogQueryWrapper);
//}
//
//if (cmsDownLogs != null && cmsDownLogs.size() > 0) {
// cmsDownLogs.sort(Comparator.comparing(CmsDownLog::getNum).reversed());
// lastNum = cmsDownLogs.get(0).getNum() + 1;
//}
//路段号
Integer roadNo = setUpTable.getROADNO();
// 站编码
@ -514,7 +447,7 @@ public class ManualIssueServiceImpl implements ManualIssueService {
fileName, paraName, isZlib, ip, downUrl, backUrl, md5, version, isDate);
} else {
log.error("[uuid:{}]-下发的文件{}不存在", uuid, DownloadPath + File.separator + fileName);
log.error("[uuid:{}]-{}-下发的文件{}不存在", uuid,Constant.STR_FRONTEND, DownloadPath + File.separator + fileName);
throw new PPException(MessageEnum..getCode(), MessageEnum..getMessage());
}
}
@ -676,24 +609,6 @@ public class ManualIssueServiceImpl implements ManualIssueService {
e.printStackTrace();
}
}
//序列号
//int lastNum = 1;
////先查询CMS_DOWNLOG_JAVA中下发的批次号
////判断当前是否是Oracle
//List<CmsDownLog> cmsDownLogs;
//if (Constant.STR_TWO.equals(DBType)) {
// cmsDownLogs = cmsDownLogMapper.selectListOracle(protocolType, isDate);
//} else {
// QueryWrapper<CmsDownLog> downLogQueryWrapper = new QueryWrapper<>();
// downLogQueryWrapper.select("NUM").eq("PARAID", protocolType)
// .eq("DT", isDate)
// .lt("NUM", 10000);
// cmsDownLogs = cmsDownLogMapper.selectList(downLogQueryWrapper);
//}
//if (cmsDownLogs != null && cmsDownLogs.size() > 0) {
// cmsDownLogs.sort(Comparator.comparing(CmsDownLog::getNum).reversed());
// lastNum = cmsDownLogs.get(0).getNum() + 1;
//}
//查询站的IP和程序的端口号
QueryWrapper<NameTableDcom> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("ROADNO", roadNo)
@ -772,9 +687,10 @@ public class ManualIssueServiceImpl implements ManualIssueService {
sendSocket(portIp, Integer.valueOf(socketPort), socketStr);
cms.setZlFlag(1);
cms.setZlText("指令发送成功");
log.info("[uuid:{}]-{}-ip:{},发送车道指令成功!", uuid, Constant.STR_FRONTEND,portIp);
//cmsDownLogMapper.insert(cms);
} else {
log.error("[uuid:{}]-ip{},端口号{},无法访问!", uuid, portIp, socketPort);
log.error("[uuid:{}]-{}-ip{},端口号{},无法访问!", uuid, Constant.STR_FRONTEND,portIp, socketPort);
cms.setZlFlag(-1);
cms.setZlText("网络故障");
//cmsDownLogMapper.insert(cms);

@ -92,6 +92,7 @@ public class WjtManualServiceImpl implements WjtManualService {
//String manno = "A/WmzjNaj6k=";
String decryptManNo = DESUtil.decrypt(manno);
if (StringUtils.isBlank(decryptManNo)) {
log.error("[uuid:{}]-{}-工号解密失败,请重新登录", uuid,Constant.STR_FRONTEND);
throw new RuntimeException("解密失败,请重新登录");
} else if ("admin".equals(decryptManNo)) {
decryptManNo = "-1";
@ -191,11 +192,11 @@ public class WjtManualServiceImpl implements WjtManualService {
CloseableHttpClientUtils.doPost(sendHttpUrl, null, data, 30000);
downLog.setZlFlag(1);
downLog.setZlText("指令发送成功");
log.info("[uuid:{}]-{},ip={},端口号port={}发送下载{}指令成功,等待下载完成后回调", uuid, info.getSTANAME(), info.getIP(), info.getPORT(), newFileInfo.getProtocolType());
log.info("[uuid:{}]-{}-{},ip={},端口号port={}发送下载{}指令成功,等待下载完成后回调", uuid,Constant.STR_FRONTEND, info.getSTANAME(), info.getIP(), info.getPORT(), newFileInfo.getProtocolType());
} else {
downLog.setZlFlag(-1);
downLog.setZlText("网络故障");
log.error("[uuid:{}]-{},ip={},端口号port={}不通,发送指令{}失败", uuid, info.getSTANAME(), info.getIP(), info.getPORT(), newFileInfo.getProtocolType());
log.error("[uuid:{}]-{}-{},ip={},端口号port={}不通,发送指令{}失败", uuid,Constant.STR_FRONTEND, info.getSTANAME(), info.getIP(), info.getPORT(), newFileInfo.getProtocolType());
}
wjtDownLogMapper.insert(downLog);
@ -205,11 +206,11 @@ public class WjtManualServiceImpl implements WjtManualService {
}
} else {
log.error("[uuid:{}]-下发的文件{}不存在", uuid, filePathName);
log.error("[uuid:{}]-{}-下发的文件{}不存在", uuid,Constant.STR_FRONTEND, filePathName);
throw new PPException(MessageEnum..getCode(), MessageEnum..getMessage());
}
} else {
log.error("[uuid:{}]-下发的文件不存在", uuid);
log.error("[uuid:{}]-{}-下发的文件不存在", uuid,Constant.STR_FRONTEND);
throw new PPException(MessageEnum..getCode(), MessageEnum..getMessage());
}
}
@ -302,16 +303,16 @@ public class WjtManualServiceImpl implements WjtManualService {
CloseableHttpClientUtils.doPost(sendHttpUrl, null, data, 30000);
downLog.setZlFlag(1);
downLog.setZlText("指令发送成功");
log.info("[uuid:{}]-{},ip={},端口号port={}发送下载{}指令成功,等待下载完成后回调", uuid, info.getSTANAME(), info.getIP(), info.getPORT(), paraText);
log.info("[uuid:{}]-{}-{},ip={},端口号port={}发送下载{}指令成功,等待下载完成后回调", uuid,Constant.STR_FRONTEND, info.getSTANAME(), info.getIP(), info.getPORT(), paraText);
} else {
downLog.setZlFlag(-1);
downLog.setZlText("网络故障");
log.error("[uuid:{}]-{},ip={},端口号port={}不通,发送{}指令失败", uuid, info.getSTANAME(), info.getIP(), info.getPORT(), paraText);
log.error("[uuid:{}]-{}-{},ip={},端口号port={}不通,发送{}指令失败", uuid,Constant.STR_FRONTEND, info.getSTANAME(), info.getIP(), info.getPORT(), paraText);
}
wjtDownLogMapper.insert(downLog);
} else {
log.error("[uuid:{}]-当前分中心没有站编号为{},下发的文件{}不存在", uuid, info.getSTANO(), DownloadPath + File.separator + fileName);
log.error("[uuid:{}]-{}-当前分中心没有站编号为{},下发的文件{}不存在", uuid, Constant.STR_FRONTEND,info.getSTANO(), DownloadPath + File.separator + fileName);
throw new PPException(MessageEnum..getCode(), MessageEnum..getMessage());
}
}
@ -401,11 +402,11 @@ public class WjtManualServiceImpl implements WjtManualService {
CloseableHttpClientUtils.doPost(sendHttpUrl, null, data, 30000);
downLog.setZlFlag(1);
downLog.setZlText("指令发送成功");
log.info("[uuid:{}]-{},ip={},端口号port={}发送下载{}指令成功,等待下载完成后回调", uuid, info.getSTANAME(), info.getIP(), info.getPORT(), paraText);
log.info("[uuid:{}]-{}-{},ip={},端口号port={}发送下载{}指令成功,等待下载完成后回调", uuid,Constant.STR_FRONTEND, info.getSTANAME(), info.getIP(), info.getPORT(), paraText);
} else {
downLog.setZlFlag(-1);
downLog.setZlText("网络故障");
log.error("[uuid:{}]-{},ip={},端口号port={}不通,发送{}指令失败", uuid, info.getSTANAME(), info.getIP(), info.getPORT(), paraText);
log.error("[uuid:{}]-{}-{},ip={},端口号port={}不通,发送{}指令失败", uuid,Constant.STR_FRONTEND, info.getSTANAME(), info.getIP(), info.getPORT(), paraText);
}
wjtDownLogMapper.insert(downLog);
}
@ -414,7 +415,7 @@ public class WjtManualServiceImpl implements WjtManualService {
} else {
log.error("[uuid:{}]-下发的文件{}不存在", uuid, DownloadPath + File.separator + fileName);
log.error("[uuid:{}]-{}-下发的文件{}不存在", uuid,Constant.STR_FRONTEND, DownloadPath + File.separator + fileName);
throw new PPException(MessageEnum..getCode(), MessageEnum..getMessage());
}
@ -567,11 +568,11 @@ public class WjtManualServiceImpl implements WjtManualService {
CloseableHttpClientUtils.doPost(sendHttpUrl, null, data, 30000);
downLog.setZlFlag(1);
downLog.setZlText("指令发送成功");
log.info("[uuid:{}]-{},ip={},端口号port={}发送下载{}指令成功,等待下载完成后回调", uuid, info.getSTANAME(), info.getIP(), info.getPORT(), paraText);
log.info("[uuid:{}]-{}-{},ip={},端口号port={}发送下载{}指令成功,等待下载完成后回调", uuid, Constant.STR_FRONTEND,info.getSTANAME(), info.getIP(), info.getPORT(), paraText);
} else {
downLog.setZlFlag(-1);
downLog.setZlText("网络故障");
log.error("[uuid:{}]-{},ip={},端口号port={}不通,发送{}指令失败", uuid, info.getSTANAME(), info.getIP(), info.getPORT(), paraText);
log.error("[uuid:{}]-{}-{},ip={},端口号port={}不通,发送{}指令失败", uuid,Constant.STR_FRONTEND, info.getSTANAME(), info.getIP(), info.getPORT(), paraText);
}
wjtDownLogMapper.insert(downLog);
}

@ -1,5 +1,8 @@
package org.tempuri;
import com.nm.gsgl.common.Constant;
import com.nm.gsgl.common.enumeration.MessageEnum;
import com.nm.gsgl.common.exception.PPException;
import com.nm.gsgl.common.utils.DateTimeUtil;
import com.nm.gsgl.common.utils.UuidUtil;
import com.nm.gsgl.entity.BackParam;
@ -30,11 +33,11 @@ public class LaneCallbackImpl implements ILaneCallback {
public String CDReturnMsg(String roadno, String stano, String portno, String msgType, String msgText, String zlText) {
String uuid = UuidUtil.getUuid();
try {
log.info("[uuid:{}]-车道回调接口开始", uuid);
log.info("[uuid:{}]-{}-站编码为{},车道号为{}回调接口开始", uuid, Constant.STR_FRONTEND,stano,portno);
byte[] decodedBytes = Base64.getDecoder().decode(msgText);
String str = new String(decodedBytes, "GBK");
String backStr = String.format("roadno:%s,stano:%s,portno:%s,msgtype:%s,msgText:%s,zlText:%s", roadno, stano, portno, msgType, str, zlText);
log.info("[uuid:{}]-车道回调接口参数为{}", uuid, backStr);
log.info("[uuid:{}]-{}-车道回调接口参数为{}", uuid, Constant.STR_FRONTEND,backStr);
String[] arr = zlText.split("\\|");
String paraId = arr[1];
String num = arr[11];
@ -65,8 +68,9 @@ public class LaneCallbackImpl implements ILaneCallback {
log.info("[uuid:{}]-根据车道回调参数插入下传车道结果表{}", uuid, cm);
} catch (Exception e) {
log.error("[uuid:{}]-根据车道回调参数,更新下传车道任务表、插入下传车道结果表失败{}", uuid, e.getMessage(), e);
throw new PPException(MessageEnum..getCode(), MessageEnum..getMessage());
}
log.info("[uuid:{}]-车道回调数据处理完成", uuid);
log.info("[uuid:{}]-{}-站编码为{},车道号为{}回调数据处理完成", uuid, Constant.STR_FRONTEND,stano,portno);
return "1";
}

@ -5,7 +5,7 @@
<meta charset="UTF-8"/>
<title></title>
<script type="module" crossorigin src="./assets/index.e95fc146.js"></script>
<script type="module" crossorigin src="./assets/index.46f1e074.js"></script>
<link rel="stylesheet" href="./assets/index.a3f8c100.css">
</head>
<body>

@ -27,3 +27,4 @@
22 2025年02月24日 1.1.11 55-车道参数表修改SQB文件的字段并将查询语句更改为SELECT BEGDATE, MINETCRATE, MAXETCRATE, MINCPCRATE, MAXCPCRATE, MAXHCRATE, USENEWTYPE, ALLOWCPU0, PAYRESTBAL, PERINSCPU, PEROUTSCPU, W0019MODE2, CANDISTIME, OPENFEE, BAK1, BAK2, BAK3, BAK4, BAK6, BAK7, BAK8, MAXONLINE, MAXHCONLIN from LaneInfo_Table
23 2025年05月09日 1.1.12 适配达梦数据库
24 2025年06月16日 1.1.13 配置文件UserStaNO增加适配多个分公司编码多个编码用英文,隔开
25 2025年07月10日 1.1.14 优化参数下发页面日志精简打印标识为[FRONTEND],同时参数下发查询查询条件优化

Binary file not shown.

Before

Width:  |  Height:  |  Size: 138 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

@ -1,31 +0,0 @@
<!DOCTYPE html>
<!--<html lang="en" class="dark">-->
<html lang="en" class="light">
<head>
<meta charset="UTF-8"/>
<title></title>
<script type="module" crossorigin src="./assets/index.e95fc146.js"></script>
<link rel="stylesheet" href="./assets/index.a3f8c100.css">
</head>
<body>
<div id="app">
<div class="loading">
<div class="loading-wrap">
<div class="loading-dots">
<span class="dot dot-spin">
<i></i>
<i></i>
<i></i>
<i></i>
</span>
</div>
<div class="loading-title">
正在缓冲...
</div>
</div>
</div>
</div>
</body>
</html>

@ -1,6 +1,6 @@
{
"hash": "7a0e2aae",
"browserHash": "24d2c489",
"browserHash": "6a2c34c1",
"optimized": {
"@element-plus/icons-vue": {
"src": "../../@element-plus/icons-vue/dist/index.js",
@ -212,10 +212,22 @@
"fileHash": "ff3c3c7c",
"needsInterop": true
},
"element-plus/es/components/button/style/css": {
"src": "../../element-plus/es/components/button/style/css.mjs",
"file": "element-plus_es_components_button_style_css.js",
"fileHash": "9de75e26",
"element-plus/es/components/form/style/css": {
"src": "../../element-plus/es/components/form/style/css.mjs",
"file": "element-plus_es_components_form_style_css.js",
"fileHash": "ac16b78c",
"needsInterop": false
},
"element-plus/es/components/upload/style/css": {
"src": "../../element-plus/es/components/upload/style/css.mjs",
"file": "element-plus_es_components_upload_style_css.js",
"fileHash": "4b70b9ba",
"needsInterop": false
},
"element-plus/es/components/form-item/style/css": {
"src": "../../element-plus/es/components/form-item/style/css.mjs",
"file": "element-plus_es_components_form-item_style_css.js",
"fileHash": "5ac034ba",
"needsInterop": false
},
"element-plus/es/components/row/style/css": {
@ -224,6 +236,24 @@
"fileHash": "23b0ebb8",
"needsInterop": false
},
"element-plus/es/components/col/style/css": {
"src": "../../element-plus/es/components/col/style/css.mjs",
"file": "element-plus_es_components_col_style_css.js",
"fileHash": "c3ed36ab",
"needsInterop": false
},
"element-plus/es/components/button/style/css": {
"src": "../../element-plus/es/components/button/style/css.mjs",
"file": "element-plus_es_components_button_style_css.js",
"fileHash": "9de75e26",
"needsInterop": false
},
"element-plus/es/components/icon/style/css": {
"src": "../../element-plus/es/components/icon/style/css.mjs",
"file": "element-plus_es_components_icon_style_css.js",
"fileHash": "c0781492",
"needsInterop": false
},
"element-plus/es/components/checkbox-group/style/css": {
"src": "../../element-plus/es/components/checkbox-group/style/css.mjs",
"file": "element-plus_es_components_checkbox-group_style_css.js",
@ -242,36 +272,6 @@
"fileHash": "b6a195ef",
"needsInterop": false
},
"element-plus/es/components/col/style/css": {
"src": "../../element-plus/es/components/col/style/css.mjs",
"file": "element-plus_es_components_col_style_css.js",
"fileHash": "c3ed36ab",
"needsInterop": false
},
"element-plus/es/components/form/style/css": {
"src": "../../element-plus/es/components/form/style/css.mjs",
"file": "element-plus_es_components_form_style_css.js",
"fileHash": "ac16b78c",
"needsInterop": false
},
"element-plus/es/components/upload/style/css": {
"src": "../../element-plus/es/components/upload/style/css.mjs",
"file": "element-plus_es_components_upload_style_css.js",
"fileHash": "4b70b9ba",
"needsInterop": false
},
"element-plus/es/components/form-item/style/css": {
"src": "../../element-plus/es/components/form-item/style/css.mjs",
"file": "element-plus_es_components_form-item_style_css.js",
"fileHash": "5ac034ba",
"needsInterop": false
},
"element-plus/es/components/icon/style/css": {
"src": "../../element-plus/es/components/icon/style/css.mjs",
"file": "element-plus_es_components_icon_style_css.js",
"fileHash": "c0781492",
"needsInterop": false
},
"element-plus/es/components/menu/style/css": {
"src": "../../element-plus/es/components/menu/style/css.mjs",
"file": "element-plus_es_components_menu_style_css.js",

@ -321,12 +321,17 @@ export default {
websocketonmessage(e) {
const line = e.data;
let line2 = e.data;
if (line.includes('ERROR')) {
line2 = `<p style="color: red;">${line}</p>`
} else {
line2 = `<p>${line}</p>`
// [FRONTEND]
if (line.includes("[FRONTEND]")) {
// [FRONTEND]
line2 = line.replace("[FRONTEND]", "");
if (line.includes('ERROR')) {
line2 = `<p style="color: red;">${line2}</p>`;
} else {
line2 = `<p>${line2}</p>`;
}
this.textarea = this.textarea + line2;
}
this.textarea = this.textarea + line2;
},
//
websocketonerror(e) {

@ -123,7 +123,7 @@
<el-col :span="24">
<el-form-item label="下发状态:" :label-width="formLabelWidth" prop="jgFlag">
<el-select v-model="inputFormParams.jgFlag">
<el-option label="全部车道" value="0"/>
<!-- <el-option label="全部车道" value="0"/>-->
<el-option label="已发指令车道" value="1"/>
<el-option label="已发送指令但失败车道" value="-1"/>
</el-select>
@ -440,15 +440,16 @@ export default {
let paraId = this.inputFormParams.paraId;
let isSend = this.inputFormParams.isSend;
let sendTime = this.inputFormParams.sendTime;
let batchNo = this.inputFormParams.batchNo;
// console.log(this.inputFormParams.paraId)
// console.log(this.inputFormParams.isSend)
// console.log(this.inputFormParams.sendTime)
this.selectForm.pageNum = this.pageNum;
this.selectForm.pageSize = this.pageSize;
if (paraId === undefined || isSend === undefined || sendTime === undefined) {
if (paraId === undefined || isSend === undefined || sendTime === undefined|| batchNo === undefined) {
ElMessage({
showClose: true,
message: '请选择参数、下发方式、下发时间',
message: '请选择参数、下发方式、下发时间、批次号',
type: 'warning',
})
return;
@ -468,7 +469,8 @@ export default {
})
},
reNetwork() { //
this.inputFormParams = {};
this.inputFormParams = { isSend: '0',
jgFlag: '1'};
// this.network();
},
cancelParamsData() {

@ -133,7 +133,7 @@
<el-col :span="24">
<el-form-item label="下发状态:" :label-width="formLabelWidth" prop="jgFlag">
<el-select v-model="inputFormParams.jgFlag">
<el-option label="全部" value="0"/>
<!-- <el-option label="全部" value="0"/>-->
<el-option label="成功发送指令" value="1"/>
<el-option label="已发送指令但失败" value="-1"/>
</el-select>
@ -470,15 +470,16 @@ export default {
let paraId = this.inputFormParams.paraId;
let isSend = this.inputFormParams.isSend;
let sendTime = this.inputFormParams.sendTime;
let batchNo = this.inputFormParams.batchNo;
// console.log(this.inputFormParams.paraId)
// console.log(this.inputFormParams.isSend)
// console.log(this.inputFormParams.sendTime)
this.selectForm.pageNum = this.pageNum;
this.selectForm.pageSize = this.pageSize;
if (paraId === undefined || isSend === undefined || sendTime === undefined) {
if (paraId === undefined || isSend === undefined || sendTime === undefined|| batchNo === undefined) {
ElMessage({
showClose: true,
message: '请选择参数、下发方式、下发时间',
message: '请选择参数、下发方式、下发时间、批次号',
type: 'warning',
})
return;
@ -496,7 +497,8 @@ export default {
})
},
reNetwork() { //
this.inputFormParams = {};
this.inputFormParams = { isSend: '0',
jgFlag: '1'};
// this.network();
},
cancelParamsData() {

@ -230,12 +230,16 @@ export default {
websocketonmessage(e) {
const line = e.data;
let line2 = e.data;
if (line.includes('ERROR')) {
line2 = `<p style="color: red;">${line}</p>`
} else {
line2 = `<p>${line}</p>`
if (line.includes("[FRONTEND]")) {
// [FRONTEND]
line2 = line.replace("[FRONTEND]", "");
if (line.includes('ERROR')) {
line2 = `<p style="color: red;">${line2}</p>`;
} else {
line2 = `<p>${line2}</p>`;
}
this.textarea = this.textarea + line2;
}
this.textarea = this.textarea + line2;
},
//
websocketonerror(e) {

Loading…
Cancel
Save