diff --git a/user-service/src/main/java/com/mh/user/job/DealDataJob.java b/user-service/src/main/java/com/mh/user/job/DealDataJob.java index 9c91158..4712011 100644 --- a/user-service/src/main/java/com/mh/user/job/DealDataJob.java +++ b/user-service/src/main/java/com/mh/user/job/DealDataJob.java @@ -1,6 +1,5 @@ package com.mh.user.job; -import com.mh.user.netty.EchoServerHandler; import com.mh.user.service.chillers.DealDataService; import com.mh.user.utils.ExchangeStringUtil; import com.mh.user.utils.SimpleWeather; @@ -39,19 +38,19 @@ public class DealDataJob { // dealDataService.proEnergy(curDate);//中央热水yyyy-MM-dd HH:mm:ss String m=curDate.substring(15,16); - if (Integer.valueOf(m)==0){ + if (Integer.parseInt(m)==0){ curDate=curDate.substring(0,16)+":00"; - }else if(Integer.valueOf(m)==2){ + }else if(Integer.parseInt(m)==2){ curDate=curDate.substring(0,16)+":00"; - }else if(Integer.valueOf(m)==4){ + }else if(Integer.parseInt(m)==4){ curDate=curDate.substring(0,16)+":00"; - }else if(Integer.valueOf(m)==6){ + }else if(Integer.parseInt(m)==6){ curDate=curDate.substring(0,16)+":00"; - }else if(Integer.valueOf(m)==8){ + }else if(Integer.parseInt(m)==8){ curDate=curDate.substring(0,16)+":00"; } dealDataService.proEnergyData(curDate);//中央空调yyyy-MM-dd HH:mm:ss - System.out.println("---------数据分析定时汇总,每二分钟!"+curDate); + log.info("---------数据分析定时汇总,每二分钟!"+curDate); } catch (Exception e) { // e.printStackTrace(); } @@ -66,9 +65,9 @@ public class DealDataJob { Date date=new Date(); String curDate=sdf1.format(date); dealDataService.proDeviceState(curDate); - System.out.println("---------设备状态定时汇总,每十五分钟!"+curDate); + log.info("---------设备状态定时汇总,每十五分钟!"+curDate); } catch (Exception e) { -// e.printStackTrace(); + log.error("设备状态定时汇总异常", e); } } @@ -79,15 +78,15 @@ public class DealDataJob { public void proDataResult() { try { String curDate= ExchangeStringUtil.dateTime(1,""); - List list=dealDataService.queryProjectId("3"); - if (list.size()>0){ + List list=dealDataService.queryProjectId("1"); + if (!list.isEmpty()){ for(String projectID:list){ dealDataService.proDataResult(curDate,projectID); //1珠江酒店,2广合,3广大 } } - System.out.println("---------能效监测定时汇总,每一分钟!"+curDate); + log.info("---------能效监测定时汇总,每一分钟!"+curDate); } catch (Exception e) { -// e.printStackTrace(); + log.error("能效监测定时汇总异常", e); } } @@ -100,7 +99,7 @@ public class DealDataJob { try { SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date=new Date(); - Map map=simpleWeather.queryWeather("广州"); + Map map= SimpleWeather.queryWeather("广州"); String curDate=sdf1.format(date); String temperature=map.get("temperature").toString(); String humidity=map.get("humidity").toString(); @@ -108,7 +107,7 @@ public class DealDataJob { log.info(curDate+","+temperature+"℃,"+humidity+"%"); } catch (Exception e) { // e.printStackTrace(); - log.error("调用获取环境温湿度接口失败!"); + log.error("调用获取环境温湿度接口失败!", e); } } @@ -126,14 +125,14 @@ public class DealDataJob { calendar.add(Calendar.DATE, -1);// 减少一天 String curDate=sdf1.format(calendar.getTime()); List list=dealDataService.queryProjectId("2"); - if (list.size()>0){ + if (!list.isEmpty()){ for(String projectID:list){ dealDataService.proEnergyDaySum(curDate,projectID); } } - System.out.println("---------中央热水生产概况汇总,每一小时!"+curDate); + log.info("---------中央热水生产概况汇总,每一小时!"+curDate); } catch (Exception e) { -// e.printStackTrace(); + log.error("中央热水生产概况定时汇总异常", e); } } diff --git a/user-service/src/main/java/com/mh/user/utils/AnalysisReceiveOrder485.java b/user-service/src/main/java/com/mh/user/utils/AnalysisReceiveOrder485.java index b65d650..cd0e9c3 100644 --- a/user-service/src/main/java/com/mh/user/utils/AnalysisReceiveOrder485.java +++ b/user-service/src/main/java/com/mh/user/utils/AnalysisReceiveOrder485.java @@ -46,6 +46,7 @@ public class AnalysisReceiveOrder485 { ProjectInfoService projectInfoService=context.getBean(ProjectInfoService.class); private final SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + private final DecimalFormat df = new DecimalFormat("#.##"); //解析冷量表 public void analysisCloudOrder485(final String dataStr1,final DeviceCodeParamEntity deviceCodeParam) { @@ -471,20 +472,7 @@ public class AnalysisReceiveOrder485 { data = ExchangeStringUtil.hexToDec(dataStr.substring(6, 8)); try{ // 赋值给dataResultCh - dataResultCh.setDeviceAddr(chillerAddr); - dataResultCh.setDeviceType(deviceCodeParam.getDeviceType()); - dataResultCh.setCurDate(sdf1.parse(dateStr)); - dataResultCh.setCurValue(data); - dataResultCh.setDeviceAddr(deviceCodeParam.getRegisterAddr()); - dataResultCh.setRegisterName(deviceCodeParam.getRegisterName()); - dataResultCh.setGrade(deviceCodeParam.getGrade()); - dataResultCh.setFunCode(deviceCodeParam.getFunCode()); - dataResultCh.setProjectID(deviceCodeParam.getProjectID()); - String projectName=projectInfoService.selectName(deviceCodeParam.getProjectID()); - log.info("冷水机:" + chillerAddr + ",状态:" + data+",项目名称:"+projectName); - dataResultService.saveDataResultChiller(dataResultCh); - dataResultService.deleteDataResultNow(deviceCodeParam.getDeviceAddr(),deviceCodeParam.getDeviceType(),deviceCodeParam.getRegisterAddr(),deviceCodeParam.getProjectID()); - log.info("冷水机保存成功!项目名称:"+projectName); + initialDataResultCh(deviceCodeParam, dataResultCh, chillerAddr, dateStr, data); }catch (Exception e){ e.printStackTrace(); log.error("冷水机报错:{}", e); @@ -494,30 +482,17 @@ public class AnalysisReceiveOrder485 { if (dataStr.length() == 14) { if (deviceCodeParam.getDigit() == 1) { // 数据 - data = Double.toString(Integer.parseInt(ExchangeStringUtil.hexToDec(dataStr.substring(6, 10))) * 0.1); + data = df.format(Integer.parseInt(ExchangeStringUtil.hexToDec(dataStr.substring(6, 10))) * 0.1); } else if (deviceCodeParam.getDigit() == 2) { // 数据 - data = Double.toString(Integer.parseInt(ExchangeStringUtil.hexToDec(dataStr.substring(6, 10))) * 0.01); + data = df.format(Integer.parseInt(ExchangeStringUtil.hexToDec(dataStr.substring(6, 10))) * 0.01); } else { // 数据 data = ExchangeStringUtil.hexToDec(dataStr.substring(6, 10)); } try{ // 赋值给dataResultCh - dataResultCh.setDeviceAddr(chillerAddr); - dataResultCh.setDeviceType(deviceCodeParam.getDeviceType()); - dataResultCh.setCurDate(sdf1.parse(dateStr)); -// dataResultCh.setCurDate(dateStr); - dataResultCh.setCurValue(data); - dataResultCh.setRegisterAddr(deviceCodeParam.getRegisterAddr()); - dataResultCh.setRegisterName(deviceCodeParam.getRegisterName()); - dataResultCh.setGrade(deviceCodeParam.getGrade()); - dataResultCh.setProjectID(deviceCodeParam.getProjectID()); - String projectName=projectInfoService.selectName(deviceCodeParam.getProjectID()); - log.info("冷水机:" + chillerAddr + ",读数:" + data+",项目名称:"+projectName); - dataResultService.saveDataResultChiller(dataResultCh); - dataResultService.deleteDataResultNow(deviceCodeParam.getDeviceAddr(),deviceCodeParam.getDeviceType(),deviceCodeParam.getRegisterAddr(),deviceCodeParam.getProjectID()); - log.info("冷水机保存成功!项目名称:"+projectName); + initialDataResultCh(deviceCodeParam, dataResultCh, chillerAddr, dateStr, data); }catch (Exception e){ e.printStackTrace(); log.error("冷水机保存异常:", e); @@ -531,6 +506,32 @@ public class AnalysisReceiveOrder485 { } } + /** + * 格式化数据 + * @param deviceCodeParam + * @param dataResultCh + * @param chillerAddr + * @param dateStr + * @param data + * @throws ParseException + */ + private void initialDataResultCh(DeviceCodeParamEntity deviceCodeParam, DataResultChEntity dataResultCh, String chillerAddr, String dateStr, String data) throws ParseException { + dataResultCh.setDeviceAddr(chillerAddr); + dataResultCh.setDeviceType(deviceCodeParam.getDeviceType()); + dataResultCh.setCurDate(sdf1.parse(dateStr)); + dataResultCh.setCurValue(data); + dataResultCh.setRegisterAddr(deviceCodeParam.getRegisterAddr()); + dataResultCh.setRegisterName(deviceCodeParam.getRegisterName()); + dataResultCh.setGrade(deviceCodeParam.getGrade()); + dataResultCh.setFunCode(deviceCodeParam.getFunCode()); + dataResultCh.setProjectID(deviceCodeParam.getProjectID()); + String projectName=projectInfoService.selectName(deviceCodeParam.getProjectID()); + log.info("冷水机:" + chillerAddr + ",状态:" + data +",项目名称:"+projectName); + dataResultService.saveDataResultChiller(dataResultCh); + dataResultService.deleteDataResultNow(deviceCodeParam.getDeviceAddr(), deviceCodeParam.getDeviceType(), deviceCodeParam.getRegisterAddr(), deviceCodeParam.getProjectID()); + log.info("冷水机保存成功!项目名称:"+projectName); + } + public void analysisChillersDDC(final String receiveData1) throws InterruptedException { // 去掉空格 // c0a8020a1f90ff04fb0000000100010200000300000400000500000600000700140800000901cb0a00000b00000c00000d00000e00000f0000100000110025120000130910cabc diff --git a/user-service/src/main/resources/application-dev.yml b/user-service/src/main/resources/application-dev.yml new file mode 100644 index 0000000..f4fdd89 --- /dev/null +++ b/user-service/src/main/resources/application-dev.yml @@ -0,0 +1,101 @@ +server: + port: 8766 #8764新珠江,8766广合科技,8767广大科技,8768珠江国际,8769保利山庄,8770东莞迎宾馆 +spring: + application: + name: jnd-user-service + datasource: + name: druidDataSource + type: com.alibaba.druid.pool.DruidDataSource + druid: + #添加allowMultiQueries=true 在批量更新时才不会出错 + url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=mh_esi;allowMultiQueries=true + driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver + username: sa + password: mh@803 + filters: stat,wall,log4j,config + max-active: 100 + initial-size: 1 + max-wait: 60000 + min-idle: 1 + time-between-eviction-runs-millis: 60000 + min-evictable-idle-time-millis: 300000 + validation-query: select 'x' + test-while-idle: true + test-on-borrow: false + test-on-return: false + pool-prepared-statements: true + max-open-prepared-statements: 50 + max-pool-prepared-statement-per-connection-size: 50 + + rabbitmq: + host: 127.0.0.1 + port: 5672 + username: guest + password: guest + virtual-host: /jnd + listener: + direct: + prefetch: 2 + simple: + prefetch: 2 + +# redis: +# database: 0 +# host: 127.0.0.1 +# port: 6379 +# password: 123456 +# timeout: 3000 #链接超时时间 +# lettuce: +# pool: +# max-active: 8 #连接池最大连接数(使用负值没有限制) +# max-wait: -1 #最大等待时间,使用负值没有限制 +# max-idle: 8 #最大空闲连接,使用负值没有限制 +# min-idle: 0 #默认最小空闲连接 默认0 + +# redis配置 +# cloud: +# config: +# uri: http://localhost:8769 +# fail-fast: true +# profiles: +# active: pro +# consul: +# host: localhost +# port: 8500 +# discovery: +# service-name: ${spring.application.name} +# application: +# name: user-service +# 开放健康检查接口 +#management: +# endpoints: +# web: +# exposure: +# include: "*" +# endpoint: +# health: +# show-details: ALWAYS +#files: +# path: ${file-path:d:/files} + +log: + level: + root: info + my: debug + file: + maxsize: 30MB + +#设置将SQL语句打印到控制台 level后面是 mybatis接口目录 +logging: + level: + com: + mh: + user: + mapper: DEBUG + file: + max-size: 30 + path: logs/${spring.application.name} + +##软件最后更新日期20230116 + + diff --git a/user-service/src/main/resources/bootstrap.yml b/user-service/src/main/resources/application-prod.yml similarity index 92% rename from user-service/src/main/resources/bootstrap.yml rename to user-service/src/main/resources/application-prod.yml index ff4ac21..4530483 100644 --- a/user-service/src/main/resources/bootstrap.yml +++ b/user-service/src/main/resources/application-prod.yml @@ -12,10 +12,6 @@ spring: driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver username: jnd password: Mh@803tech -# url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=mh_esi;allowMultiQueries=true -# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver -# username: sa -# password: mh@803 filters: stat,wall,log4j,config max-active: 100 initial-size: 1 diff --git a/user-service/src/main/resources/application-test.yml b/user-service/src/main/resources/application-test.yml new file mode 100644 index 0000000..4530483 --- /dev/null +++ b/user-service/src/main/resources/application-test.yml @@ -0,0 +1,101 @@ +server: + port: 8766 #8764新珠江,8766广合科技,8767广大科技,8768珠江国际,8769保利山庄,8770东莞迎宾馆 +spring: + application: + name: jnd-user-service + datasource: + name: druidDataSource + type: com.alibaba.druid.pool.DruidDataSource + druid: + #添加allowMultiQueries=true 在批量更新时才不会出错 + url: jdbc:sqlserver://111.230.50.186:32012;DatabaseName=mh_jnd;allowMultiQueries=true + driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver + username: jnd + password: Mh@803tech + filters: stat,wall,log4j,config + max-active: 100 + initial-size: 1 + max-wait: 60000 + min-idle: 1 + time-between-eviction-runs-millis: 60000 + min-evictable-idle-time-millis: 300000 + validation-query: select 'x' + test-while-idle: true + test-on-borrow: false + test-on-return: false + pool-prepared-statements: true + max-open-prepared-statements: 50 + max-pool-prepared-statement-per-connection-size: 50 + + rabbitmq: + host: 127.0.0.1 + port: 5672 + username: guest + password: guest + virtual-host: /jnd + listener: + direct: + prefetch: 2 + simple: + prefetch: 2 + +# redis: +# database: 0 +# host: 127.0.0.1 +# port: 6379 +# password: 123456 +# timeout: 3000 #链接超时时间 +# lettuce: +# pool: +# max-active: 8 #连接池最大连接数(使用负值没有限制) +# max-wait: -1 #最大等待时间,使用负值没有限制 +# max-idle: 8 #最大空闲连接,使用负值没有限制 +# min-idle: 0 #默认最小空闲连接 默认0 + +# redis配置 +# cloud: +# config: +# uri: http://localhost:8769 +# fail-fast: true +# profiles: +# active: pro +# consul: +# host: localhost +# port: 8500 +# discovery: +# service-name: ${spring.application.name} +# application: +# name: user-service +# 开放健康检查接口 +#management: +# endpoints: +# web: +# exposure: +# include: "*" +# endpoint: +# health: +# show-details: ALWAYS +#files: +# path: ${file-path:d:/files} + +log: + level: + root: info + my: debug + file: + maxsize: 30MB + +#设置将SQL语句打印到控制台 level后面是 mybatis接口目录 +logging: + level: + com: + mh: + user: + mapper: DEBUG + file: + max-size: 30 + path: logs/${spring.application.name} + +##软件最后更新日期20230116 + + diff --git a/user-service/src/main/resources/application.yml b/user-service/src/main/resources/application.yml new file mode 100644 index 0000000..caf4dfc --- /dev/null +++ b/user-service/src/main/resources/application.yml @@ -0,0 +1,3 @@ +spring: + profiles: + active: dev \ No newline at end of file diff --git a/user-service/src/main/resources/log4j.properties b/user-service/src/main/resources/log4j.properties index b7a847c..cd388c4 100644 --- a/user-service/src/main/resources/log4j.properties +++ b/user-service/src/main/resources/log4j.properties @@ -1,32 +1,32 @@ -### set log levels DEBUG ### -log4j.rootLogger = INFO,CONSOLE,infoFile, errorFile -LocationInfo=true -log4j.appender.CONSOLE = org.apache.log4j.ConsoleAppender -#log4j.appender.CONSOLE.Encoding=UTF-8 -log4j.appender.CONSOLE.Target = System.out -log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout -log4j.appender.CONSOLE.layout.ConversionPattern =[%d{yyyy-MM-dd HH:mm:ss,SSS}]-[%p]:%m %x %n - -log4j.appender.infoFile = org.apache.log4j.DailyRollingFileAppender -log4j.appender.infoFile.Threshold = INFO -log4j.appender.infoFile.File = ./logs/log.log -log4j.appender.infoFile.DatePattern ='.'yyyy-MM-dd'.log' -log4j.appender.infoFile.Append=true -log4j.appender.infoFile.layout = org.apache.log4j.PatternLayout -log4j.appender.infoFile.layout.ConversionPattern =[%d{yyyy-MM-dd HH:mm:ss,SSS}]-[%p]:%m %x %n - -log4j.appender.errorFile = org.apache.log4j.DailyRollingFileAppender -log4j.appender.errorFile.Threshold = ERROR -log4j.appender.errorFile.File = ./logs/error.log -log4j.appender.errorFile.DatePattern ='.'yyyy-MM-dd'.log' -log4j.appender.errorFile.Append=true -log4j.appender.errorFile.layout = org.apache.log4j.PatternLayout -log4j.appender.errorFile.layout.ConversionPattern =[%d{yyyy-MM-dd HH:mm:ss,SSS}]-[%p]:%m %x %n - -#log4j.appender.debugfile = org.apache.log4j.DailyRollingFileAppender -#log4j.appender.debugfile.Threshold = DEBUG -#log4j.appender.debugfile.File = ./logs/debug -#log4j.appender.debugfile.DatePattern = yyyy-MM-dd'.log' -#log4j.appender.debugfile.Append=true -#log4j.appender.debugfile.layout = org.apache.log4j.PatternLayout -#log4j.appender.debugfile.layout.ConversionPattern =[%d{yyyy-MM-dd HH:mm:ss,SSS}]-[%p]:%m %x %n +#### set log levels DEBUG ### +#log4j.rootLogger = INFO,CONSOLE,infoFile, errorFile +#LocationInfo=true +#log4j.appender.CONSOLE = org.apache.log4j.ConsoleAppender +##log4j.appender.CONSOLE.Encoding=UTF-8 +#log4j.appender.CONSOLE.Target = System.out +#log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout +#log4j.appender.CONSOLE.layout.ConversionPattern =[%d{yyyy-MM-dd HH:mm:ss,SSS}]-[%p]:%m %x %n +# +#log4j.appender.infoFile = org.apache.log4j.DailyRollingFileAppender +#log4j.appender.infoFile.Threshold = INFO +#log4j.appender.infoFile.File = ./logs/log.log +#log4j.appender.infoFile.DatePattern ='.'yyyy-MM-dd'.log' +#log4j.appender.infoFile.Append=true +#log4j.appender.infoFile.layout = org.apache.log4j.PatternLayout +#log4j.appender.infoFile.layout.ConversionPattern =[%d{yyyy-MM-dd HH:mm:ss,SSS}]-[%p]:%m %x %n +# +#log4j.appender.errorFile = org.apache.log4j.DailyRollingFileAppender +#log4j.appender.errorFile.Threshold = ERROR +#log4j.appender.errorFile.File = ./logs/error.log +#log4j.appender.errorFile.DatePattern ='.'yyyy-MM-dd'.log' +#log4j.appender.errorFile.Append=true +#log4j.appender.errorFile.layout = org.apache.log4j.PatternLayout +#log4j.appender.errorFile.layout.ConversionPattern =[%d{yyyy-MM-dd HH:mm:ss,SSS}]-[%p]:%m %x %n +# +##log4j.appender.debugfile = org.apache.log4j.DailyRollingFileAppender +##log4j.appender.debugfile.Threshold = DEBUG +##log4j.appender.debugfile.File = ./logs/debug +##log4j.appender.debugfile.DatePattern = yyyy-MM-dd'.log' +##log4j.appender.debugfile.Append=true +##log4j.appender.debugfile.layout = org.apache.log4j.PatternLayout +##log4j.appender.debugfile.layout.ConversionPattern =[%d{yyyy-MM-dd HH:mm:ss,SSS}]-[%p]:%m %x %n diff --git a/user-service/src/main/resources/logback-spring.xml b/user-service/src/main/resources/logback-spring.xml index 01ece4a..d910457 100644 --- a/user-service/src/main/resources/logback-spring.xml +++ b/user-service/src/main/resources/logback-spring.xml @@ -3,7 +3,7 @@ logs - + @@ -70,7 +70,7 @@ - +