Merge remote-tracking branch 'origin/master'
| | |
| | | if(topicGrp.length != 5){ |
| | | throw new Exception("æ¥æ¶çmqttæ¶æ¯ä¸»é¢ä¸å¯è¯å«") ; |
| | | }else{ |
| | | if(NumUtil.isPlusIntNumber(topicGrp[4])){ |
| | | if(!NumUtil.isPlusIntNumber(topicGrp[4])){ |
| | | throw new Exception("æ¥æ¶çmqttæ¶æ¯ä¸»é¢ä¸å¯è¯å«") ; |
| | | } |
| | | if(Integer.parseInt(topicGrp[4]) <= 0){ |
| | |
| | | |
| | | |
| | | public static void main(String[] args) { |
| | | String s = "ym/sd1/10000/control/m1" ; |
| | | String s = "jyg/sd1/2430002404000840/weather/1" ; |
| | | String[] ss = s.split("/") ; |
| | | for (String s1 : ss) { |
| | | System.out.println(s1); |
| | |
| | | import com.dy.common.mw.protocol4Mqtt.MqttPubMsg; |
| | | import com.dy.common.mw.protocol4Mqtt.MqttSubMsg; |
| | | import com.dy.common.mw.protocol4Mqtt.MqttTopic; |
| | | import com.dy.common.mw.protocol4Mqtt.pSdV1.upVos.StateVo; |
| | | import com.dy.common.mw.protocol4Mqtt.Vo4Up; |
| | | import com.dy.common.mw.protocol4Mqtt.pSdV1.upVos.ManureVo; |
| | | import com.dy.common.util.Callback; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | |
| | | public boolean subMsgMatchPubMsg(MqttPubMsg pubMsg){ |
| | | if (pubMsg instanceof MqttPubMsgSdV1) { |
| | | //MqttPubMsgSdV1 pubMsgSdV1 = (MqttPubMsgSdV1) pubMsg; |
| | | if(this.vo4Up != null && this.vo4Up instanceof StateVo){ |
| | | if(this.vo4Up != null && this.vo4Up instanceof ManureVo){ |
| | | //åªè¦ä¸æ¥çæ¯ç¶ææ°æ®ï¼è¯´æè®¾å¤ååºäºå½ä»¤ |
| | | return true ; |
| | | } |
| | |
| | | } |
| | | case ProtocolConstantSdV1.SubTopicManure -> { |
| | | vo = JSON.parseObject(strTxt, ManureVo.class); |
| | | break; |
| | | } |
| | | case ProtocolConstantSdV1.SubTopicState -> { |
| | | //æ¤å¤æªå®æï¼åºè¯¥äº§çä¸äºéä¿¡çinfoï¼ä¾ä¸é¢callback.notify(objs)éç¥åºå» |
| | | vo = JSON.parseObject(strTxt, StateVo.class); |
| | | StateVo stVo = (StateVo)vo ; |
| | | ManureVo stVo = (ManureVo)vo ; |
| | | stInfo = new DevRunInfo() ; |
| | | stInfo.devId = msg.deviceId ; |
| | | stInfo.stirRunning = (stVo.stirRunning==null?false:(stVo.stirRunning.byteValue()==1?true:false)) ; //æ
æè¿è¡ trueæ¯ falseå¦ |
| | |
| | | @JSONField(name = "flexem_message_id") |
| | | public Integer messageId ;//æ¶æ¯ID |
| | | |
| | | public Integer no ;//æµç«ç¼å·ï¼å
¶ä¸å¨JSONæ°æ®ä¸ï¼å
¶ä¸ä¸»é¢ä¸ |
| | | public Integer no ;//æµç«ç¼å·ï¼å
¶ä¸å¨JSONæ°æ®ä¸ï¼å
¶å¨ä¸»é¢ä¸ |
| | | |
| | | @JSONField(name = "æ
æè¿è¡") |
| | | public Byte stirRunning ;//æ
æè¿è¡ |
| | | |
| | | @JSONField(name = "注è¥è¿è¡") |
| | | public Byte injectRunning ;//注è¥è¿è¡ |
| | | |
| | | @JSONField(name = "çæºè¿è¡") |
| | | public Byte irrRunning ;//çæºè¿è¡ |
| | | |
| | | @JSONField(name = "æ¥è¦") |
| | | public Byte alarm ;//æ¥è¦ |
| | | |
| | | @JSONField(name = "è¥ææµé") |
| | | public Float manureFlow ;//è¥ææµé |
| | | public Float manureFlow ; |
| | | |
| | | @JSONField(name = "æ³¨è¥æ¶é¿") |
| | | public Integer manureTime ;//æ³¨è¥æ¶é¿ |
| | | @JSONField(name = "注è¥ç»è¿æ¶é´") |
| | | public Integer manureTime ; |
| | | |
| | | @JSONField(name = "æ
ææ¶é¿") |
| | | public Integer stirTime ;//æ
ææ¶é¿ |
| | | @JSONField(name = "æ
æç»è¿æ¶é´") |
| | | public Integer stirTime ; |
| | | |
| | | @JSONField(name = "flexem_timestamp") |
| | | public Long devDt ;//è®¾å¤æ¶é´ |
| | |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append("æ°´è¥æ°æ®=>") ; |
| | | sb.append(" æ¶æ¯IDï¼" + messageId + ", ") ; |
| | | sb.append(" æ
æè¿è¡ï¼" + stirRunning + ", ") ; |
| | | sb.append(" 注è¥è¿è¡ï¼" + injectRunning + ", ") ; |
| | | sb.append(" çæºè¿è¡ï¼" + irrRunning + ", ") ; |
| | | sb.append(" æ¥è¦ï¼" + alarm + ", ") ; |
| | | sb.append(" è¥ææµéï¼" + manureFlow + ", ") ; |
| | | sb.append(" æ³¨è¥æ¶é¿ï¼" + manureTime + ", ") ; |
| | | sb.append(" æ
ææ¶é¿ï¼" + stirTime + ", ") ; |
| | | sb.append(" 注è¥ç»è¿æ¶é´ï¼" + manureTime + ", ") ; |
| | | sb.append(" æ
æç»è¿æ¶é´ï¼" + stirTime + ", ") ; |
| | | sb.append(" è®¾å¤æ¶é´ï¼" + devDt + ", ") ; |
| | | sb.append(" è®¾å¤æ¶é´ï¼" + this.getDevDtStr() + ", ") ; |
| | | sb.append("\n") ; |
| | |
| | | @JSONField(name = "flexem_message_id") |
| | | public Integer messageId ;//æ¶æ¯ID |
| | | |
| | | public Integer no ;//æµç«ç¼å·ï¼å
¶ä¸å¨JSONæ°æ®ä¸ï¼å
¶ä¸ä¸»é¢ä¸ |
| | | public Integer no ;//æµç«ç¼å·ï¼å
¶ä¸å¨JSONæ°æ®ä¸ï¼å
¶å¨ä¸»é¢ä¸ |
| | | |
| | | @JSONField(name = "å壤湿度1") |
| | | public Float soilHumidity1 ;//å壤湿度1 |
| | | public Integer soilHumidity1 ; |
| | | |
| | | @JSONField(name = "å壤湿度2") |
| | | public Float soilHumidity2 ;//å壤湿度2 |
| | | public Integer soilHumidity2 ; |
| | | |
| | | @JSONField(name = "å壤湿度3") |
| | | public Float soilHumidity3 ;//å壤湿度3 |
| | | public Integer soilHumidity3 ; |
| | | |
| | | @JSONField(name = "å壤湿度4") |
| | | public Float soilHumidity4 ;//å壤湿度4 |
| | | public Integer soilHumidity4 ; |
| | | |
| | | @JSONField(name = "å壤湿度5") |
| | | public Integer soilHumidity5 ; |
| | | |
| | | @JSONField(name = "å壤湿度1") |
| | | public Float soilTemperature1 ;//å壤温度1 |
| | | public Integer soilTemperature1 ; |
| | | |
| | | @JSONField(name = "å壤温度2") |
| | | public Float soilTemperature2 ;//å壤温度2 |
| | | public Integer soilTemperature2 ; |
| | | |
| | | @JSONField(name = "å壤温度3") |
| | | public Float soilTemperature3 ;//å壤温度3 |
| | | public Integer soilTemperature3 ; |
| | | |
| | | @JSONField(name = "å壤温度4") |
| | | public Float soilTemperature4 ;//å壤温度4 |
| | | public Integer soilTemperature4 ; |
| | | |
| | | @JSONField(name = "å壤温度5") |
| | | public Integer soilTemperature5 ; |
| | | |
| | | @JSONField(name = "flexem_timestamp") |
| | | public Long devDt ;//è®¾å¤æ¶é´ |
| | |
| | | @JSONField(name = "flexem_message_id") |
| | | public Integer messageId ;//æ¶æ¯ID |
| | | |
| | | public Integer no ;//æµç«ç¼å·ï¼å
¶ä¸å¨JSONæ°æ®ä¸ï¼å
¶ä¸ä¸»é¢ä¸ |
| | | public Integer no ;//æµç«ç¼å·ï¼å
¶ä¸å¨JSONæ°æ®ä¸ï¼å
¶å¨ä¸»é¢ä¸ |
| | | |
| | | @JSONField(name = "äºæ°§å碳") |
| | | public Integer carbonDioxide ;//äºæ°§å碳 |
| | | //@JSONField(name = "äºæ°§å碳") |
| | | //public Integer carbonDioxide ; |
| | | |
| | | @JSONField(name = "å
ç
§å¼ºåº¦") |
| | | public Integer lightIntensity ;//å
ç
§å¼ºåº¦ |
| | | |
| | | @JSONField(name = "大æ°åå") |
| | | public Integer atmosphericPressure ;//大æ°åå |
| | | //@JSONField(name = "大æ°åå") |
| | | //public Integer atmosphericPressure ; |
| | | |
| | | @JSONField(name = "ç©ºæ°æ¸©åº¦") |
| | | public Integer airTemperature ;//ç©ºæ°æ¸©åº¦ |
| | | public Integer airTemperature ; |
| | | |
| | | @JSONField(name = "ç©ºæ°æ¹¿åº¦") |
| | | public Integer airHumidity ;//ç©ºæ°æ¹¿åº¦ |
| | | public Integer airHumidity ; |
| | | |
| | | @JSONField(name = "PM2.5") |
| | | public Integer pm25 ;//PM2.5 |
| | | @JSONField(name = "ç´«å¤çº¿") |
| | | public Integer ultraviolet ; |
| | | |
| | | @JSONField(name = "PM10") |
| | | public Integer pm10 ;//PM10 |
| | | @JSONField(name = "å
ç
§å¼ºåº¦") |
| | | public Integer lightIntensity ; |
| | | |
| | | @JSONField(name = "é¨é") |
| | | public Integer rainfall ; |
| | | |
| | | @JSONField(name = "é£é") |
| | | public Integer windSpeed ; |
| | | |
| | | @JSONField(name = "é£å") |
| | | public Integer windDirection ; |
| | | |
| | | |
| | | @JSONField(name = "flexem_timestamp") |
| | |
| | | public String toString(){ |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append("æ°è±¡æ°æ®=>") ; |
| | | //sb.append(" äºæ°§å碳ï¼" + carbonDioxide + ", ") ; |
| | | //sb.append(" 大æ°ååï¼" + atmosphericPressure + ", ") ; |
| | | sb.append(" æ¶æ¯IDï¼" + messageId + ", ") ; |
| | | sb.append(" äºæ°§å碳ï¼" + carbonDioxide + ", ") ; |
| | | sb.append(" å
ç
§å¼ºåº¦ï¼" + lightIntensity + ", ") ; |
| | | sb.append(" 大æ°ååï¼" + atmosphericPressure + ", ") ; |
| | | sb.append(" ç©ºæ°æ¸©åº¦ï¼" + airTemperature + ", ") ; |
| | | sb.append(" ç©ºæ°æ¹¿åº¦ï¼" + airHumidity + ", ") ; |
| | | sb.append(" PM2.5ï¼" + pm25 + ", ") ; |
| | | sb.append(" PM10ï¼" + pm10 + ", ") ; |
| | | sb.append(" ç´«å¤çº¿ï¼" + ultraviolet + ", ") ; |
| | | sb.append(" å
ç
§å¼ºåº¦ï¼" + lightIntensity + ", ") ; |
| | | sb.append(" é¨éï¼" + rainfall + ", ") ; |
| | | sb.append(" é£éï¼" + windSpeed + ", ") ; |
| | | sb.append(" é£åï¼" + windDirection + ", ") ; |
| | | sb.append(" è®¾å¤æ¶é´ï¼" + devDt + ", ") ; |
| | | sb.append(" è®¾å¤æ¶é´ï¼" + this.getDevDtStr() + ", ") ; |
| | | sb.append("\n") ; |
| | |
| | | # gz: 8103 9103 |
| | | # lz: 8104 9104 |
| | | # jc: 8105 9105 |
| | | # jyg: 8106 9106 |
| | | pipIrr_mw_webPort: 8070 #éä¿¡ä¸é´ä»¶ä¸åºç¨ï¼ä¸è½å¨web模åç³»ç»ä¸åºç¨ |
| | | pipIrr_mw_actutorPort: 9070 #éä¿¡ä¸é´ä»¶ä¸åºç¨ï¼ä¸è½å¨web模åç³»ç»ä¸åºç¨ |
| | | |
| | |
| | | # gz: pipIrr_gz |
| | | # lz: pipIrr_lz |
| | | # jc: pipIrr_jc |
| | | # jyg: pipIrr_jyg |
| | | spring_datasource_url_dbname: pipIrr_ym #æ°æ®åºåç§° |
| | |
| | | common: |
| | | # 233æå¡å¨ï¼ym,mj,sp,test |
| | | # 121æå¡å¨ï¼mq,yq,hlj,gz,lz,jc |
| | | spring_main_datasource_names: mq,yq,hlj,gz,lz,jc |
| | | # 121æå¡å¨ï¼mq,yq,hlj,gz,lz,jc,jyg |
| | | spring_main_datasource_names: mq,yq,hlj,gz,lz,jc,jyg |
| | | |
| | | # èæå¡è¡¨: |
| | | # åæ®µin_useæä¸ºå ç¨ç¶æï¼å½ä¸ºtrueæ¶ç»ä¸è®¾ç½®å¼ä¸º0 |
| | |
| | | common: |
| | | # 233æå¡å¨ï¼ym,mj,sp,test |
| | | # 121æå¡å¨ï¼mq,yq,hlj,gz,lz,jc |
| | | # 121æå¡å¨ï¼mq,yq,hlj,gz,lz,jc,jyg |
| | | spring_main_datasource_names: ym,mj,sp,test |
| | | |
| | | # èæå¡è¡¨: |
New file |
| | |
| | | # æ°æ®æºé
ç½® |
| | | spring: |
| | | datasource: #é
ç½®æ°æ®æº |
| | | jyg: |
| | | #name: ym |
| | | type: com.alibaba.druid.pool.DruidDataSource |
| | | driverClassName: com.mysql.cj.jdbc.Driver |
| | | # url: jdbc:mysql://192.168.40.166:3306/pipIrr_jyg?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull |
| | | # url: jdbc:mysql://8.130.130.233:3306/pipIrr_jyg?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull |
| | | url: jdbc:mysql://127.0.0.1:3306/pipIrr_jyg?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull |
| | | username: root |
| | | password: dysql,;.abc!@# |
| | | druid: |
| | | # æ°æ®æºåç§°ï¼å½åå¨å¤ä¸ªæ°æ®æºæ¶ï¼è®¾ç½®ååå¯ä»¥å¾æ¹ä¾¿çæ¥è¿è¡åºå,é»è®¤èªå¨çæåç§°ï¼æ ¼å¼æ¯ï¼"DataSource-" + System.identityHashCode(this) |
| | | name: druid-mysql-jyg |
| | | #é
ç½®åå§å大å°ãæå°ãæå¤§ |
| | | initialSize: 10 |
| | | minIdle: 10 |
| | | maxActive: 100 |
| | | # è·åè¿æ¥æ¶æå¤§çå¾
æ¶é´,å使¯«ç§ãé
ç½®äºmaxWaitä¹å,缺çå¯ç¨å
¬å¹³é,å¹¶åæç伿æä¸é,妿éè¦å¯ä»¥éè¿é
ç½®useUnfairLock屿§ä¸ºtrue使ç¨éå
¬å¹³é |
| | | maxWait: 60000 |
| | | #é
ç½®é´éå¤ä¹
è¿è¡ä¸æ¬¡æ£æµï¼æ£æµéè¦å
³éç空é²è¿æ¥ï¼å使¯«ç§ã é»è®¤æ¯60sï¼å¤ªé¿å¯è½ä¼å¯¼è´æ æ³åæ¶æ£æµå°è¿æ¥ä¸æ |
| | | timeBetweenEvictionRunsMillis: 60000 |
| | | #é
ç½®ä¸ä¸ªè¿æ¥å¨è¿æ¥æ± ä¸çæå°çåæ¶é´ãæå¤§çåæ¶é´ï¼è¶
è¿æå¤§çåæ¶é´ä¼è¢«ç§»é¤ï¼å使¯«ç§ã |
| | | minEvictableIdleTimeMillis: 300000 |
| | | maxEvictableIdleTimeMillis: 900000 |
| | | #æ¢æ´»ãéªè¯é¾æ¥æææ§çæ¥è¯¢ï¼æ°çæ¬é»è®¤ä½¿ç¨mysqlPingä»£æ¿ |
| | | #validation-query: select 1 #注éæï¼éç¨é»è®¤çmysqlPing |
| | | #é
ç½®ä»è¿æ¥æ± è·åè¿æ¥æ¶ï¼å½è¿æ¥ç©ºé²æ¶é´å¤§äºtimeBetweenEvictionRunsMillisæ¶æ¯å¦æ£æ¥è¿æ¥æææ§ï¼trueæ¯æ¬¡é½æ£æ¥ï¼false䏿£æ¥ã |
| | | testWhileIdle: true |
| | | #é
ç½®ä»è¿æ¥æ± è·åè¿æ¥æ¶ååè¿æ¥æ± å½è¿è¿æ¥æ¶ï¼æ¯å¦æ£æ¥è¿æ¥æææ§ |
| | | #æ¯æ¬¡è·åæå½è¿è¿æ¥é½æ£æµå¤ªé¢ç¹ï¼é¤éç¹å«éè¦æç½ç»ç¹å«ä¸å¯é çæ
åµï¼å»ºè®®ç¨testWhileIdle + timeBetweenEvictionRunsMillis代æ¿ã--> |
| | | testOnBorrow: false |
| | | testOnReturn: false |
| | | #é
ç½®æ¯å¦å®ææ¢æ´»ãæ¢æ´»é´é, é»è®¤120s |
| | | keepAlive: true |
| | | #keepAliveBetweenTimeMillis must be greater than timeBetweenEvictionRunsMillis |
| | | keepAliveBetweenTimeMillis: 1200000 |
| | | #é
ç½®ä¸ä¸ªè¿æ¥æå¤§ä½¿ç¨æ¬¡æ°ï¼é¿å
é¿æ¶é´ä½¿ç¨ç¸åè¿æ¥é ææå¡å¨ç«¯è´è½½ä¸åè¡¡ã |
| | | phyMaxUseCount: 1000 |
| | | #æ¯å¦ç¼åpreparedStatementï¼ä¹å°±æ¯PSCacheãPSCacheå¯¹æ¯ææ¸¸æ çæ°æ®åºæ§è½æåå·¨å¤§ï¼æ¯å¦è¯´oracleãå¨mysqlä¸å»ºè®®å
³éã |
| | | poolPreparedStatements: false |
| | | #è¦å¯ç¨PSCacheï¼å¿
é¡»é
置大äº0ï¼å½å¤§äº0æ¶ï¼poolPreparedStatementsèªå¨è§¦åä¿®æ¹ä¸ºtrueãå¨Druidä¸ï¼ä¸ä¼åå¨Oracleä¸PSCacheå ç¨å
åè¿å¤çé®é¢ï¼å¯ä»¥æè¿ä¸ªæ°å¼é
置大ä¸äºï¼æ¯å¦è¯´100 |
| | | maxOpenPreparedStatements: -1 |
| | | #æå®æ¯ä¸ªè¿æ¥ä¸PSCacheçå¤§å° |
| | | maxPoolPreparedStatementPerConnectionSize: 20 |
| | | #屿§ç±»åæ¯å符串ï¼éè¿å«åçæ¹å¼é
ç½®æ©å±æä»¶ï¼å¸¸ç¨çæä»¶æï¼ |
| | | #çæ§ç»è®¡ç¨çfilter:statï¼æ¥å¿ç¨çfilter:log4jï¼é²å¾¡sql注å
¥çfilter:wall |
| | | #filters: stat,wall,config |
| | | filters: wall,config |
| | | webStatFilter: |
| | | # æ·»å è¿æ»¤è§å |
| | | urlPattern: /* |
| | | # 忽ç¥è¿æ»¤æ ¼å¼ |
| | | exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*" |
| | | statViewServlet: |
| | | # 设置ipç½åå |
| | | # allow: 127.0.0.1 |
| | | # 设置ipé»ååï¼ä¼å
级é«äºç½åå |
| | | deny: |
| | | # 设置æ§å¶å°ç®¡çç¨æ· |
| | | # loginUsername: root |
| | | # loginPassword: root |
| | | # æ¯å¦å¯ä»¥éç½®æ°æ® |
| | | resetEnable: false |
| | | # å¼å¯druidçæ§é¡µé¢ |
| | | #enabled: true |
| | | enabled: false |
| | | |
| | |
| | | jc: |
| | | url: "http://127.0.0.1:8105" |
| | | comSendUrl: "http://127.0.0.1:8105/rtuMw/com/send" |
| | | jyg: |
| | | url: "http://127.0.0.1:8106" |
| | | comSendUrl: "http://127.0.0.1:8106/rtuMw/com/send" |
| | | #Rtuè¿ç¨å½ä»¤ç»æåè°å°å |
| | | rtuCallbackUrl_rm: "http://127.0.0.1:8081/remote/comRes/receive" |
| | | #æ¥æ¶éä¿¡ä¸é´ä»¶æ¶æ¯ä¸å¿æ¶æ¯çå°å |
| | |
| | | secret: SEC6042bc964d08899a5853eb321eb5a4d842a395982777f815bd07451c879228b7 |
| | | at-all: true |
| | | mobile: 18602657034 |
| | | jyg: |
| | | enable: false #æ¯å¦å¯ç¨ |
| | | robot: |
| | | url: https://oapi.dingtalk.com/robot/send |
| | | access-token: fecef8e7725998f8912af05419580861aafc73413c4920036c07c050fa33055f |
| | | secret: SEC6042bc964d08899a5853eb321eb5a4d842a395982777f815bd07451c879228b7 |
| | | at-all: true |
| | | mobile: 18602657034 |
| | | |
| | | #è§é¢çæ§ç¸å
³ |
| | | video: |
| | |
| | | <item3 typeName="设å¤ä¿å
»"/> |
| | | </taskType> |
| | | </org6> |
| | | <org7 tag="jyg" name="å峪å
³" enable="true"> |
| | | <districts> |
| | | <province name="çèç" num="62" level="0"> |
| | | <city name="å峪å
³å¸" num="02" level="1"> |
| | | <country name="æ°åé" num="01" level="2" /> |
| | | </city> |
| | | </province> |
| | | </districts> |
| | | <dictionaries> |
| | | <dict code="icProtocol" title="ICå¡åè®®" valueType="2"> |
| | | <dictItem> |
| | | <!-- é³å»ºä¼çæ¬ICå¡åè®® å¡ä¸ç¼å·å·²ç»å é¿ï¼ä¸çæ±æµ·çæ¬ä¸è´ï¼ï¼ä¸çº¯èçæ¬åè®®ä¸å --> |
| | | <item1 dictCode="icProtocol" value="icP202203" name="èå¡åè®®" status="1" sort="0" /> |
| | | <!-- çæ±æµ·çæ¬ICå¡åè®® --> |
| | | <item2 dictCode="icProtocol" value="icP202404" name="æ°å¡åè®®" status="0" sort="1" /> |
| | | </dictItem> |
| | | </dict> |
| | | </dictionaries> |
| | | <user name="è¶
级管çå" phone="admin" password="dyyjy" supperAdmin="1" /> |
| | | <payments> |
| | | <item1 name="ç°é"/> |
| | | <item2 name="POSæº"/> |
| | | <item3 name="é¶è¡è½¬è´¦"/> |
| | | </payments> |
| | | <settings> |
| | | <item1 item_name="lng" item_value="98.28875541687012" remarks="ç»åº¦"/> |
| | | <item2 item_name="lat" item_value="39.77140971937612" remarks="纬度"/> |
| | | <item3 item_name="zoomMp" item_value="12" remarks="ææºå°å¾ç¼©æ¾çº§å«"/> |
| | | <item4 item_name="zoomPc" item_value="19" remarks="PCæºå°å¾ç¼©æ¾çº§å«"/> |
| | | <item5 item_name="projectName" item_value="é«ææºæ
§ç®¡çå¾®çäºæå¡ç®¡çå¹³å°" remarks="项ç®åç§°"/> |
| | | </settings> |
| | | <waterTypes> |
| | | <item1 typeName="çæºç¨æ°´"/> |
| | | <item2 typeName="å·¥ä¸ç¨æ°´"/> |
| | | <item3 typeName="çæ´»ç¨æ°´"/> |
| | | <item4 typeName="å
»æ®ç¨æ°´"/> |
| | | <item5 typeName="绿åç¨æ°´"/> |
| | | </waterTypes> |
| | | <waterPrice price="0.90" /> |
| | | <irrigateProfile> |
| | | <item1 defaultValue = "10" unit = "2" sort = "1" type = "1"/> |
| | | <item2 defaultValue = "20" unit = "2" sort = "2" type = "1" /> |
| | | <item3 defaultValue = "1" unit = "1" sort = "3" type = "1"/> |
| | | <item4 defaultValue = "2" unit = "1" sort = "4" type = "1"/> |
| | | <item5 defaultValue = "20" unit = "3" sort = "1" type = "2"/> |
| | | <item6 defaultValue = "30" unit = "3" sort = "2" type = "2"/> |
| | | <item7 defaultValue = "50" unit = "3" sort = "3" type = "2"/> |
| | | <item8 defaultValue = "80" unit = "3" sort = "4" type = "2"/> |
| | | </irrigateProfile> |
| | | <rechargeProfile> |
| | | <item1 rechargeAmount = "50" sort = "1"/> |
| | | <item2 rechargeAmount = "100" sort = "2" /> |
| | | <item3 rechargeAmount = "200" sort = "3"/> |
| | | <item4 rechargeAmount = "300" sort = "4"/> |
| | | <item5 rechargeAmount = "500" sort = "5"/> |
| | | <item6 rechargeAmount = "1000" sort = "6"/> |
| | | </rechargeProfile> |
| | | <taskType> |
| | | <item1 typeName="设å¤å®è£
"/> |
| | | <item2 typeName="设å¤ç»´ä¿®"/> |
| | | <item3 typeName="设å¤ä¿å
»"/> |
| | | </taskType> |
| | | </org7> |
| | | </orgs> |
| | | </config> |
| | |
| | | # çå·ï¼ gz |
| | | # åå·ï¼ lz |
| | | # éå·ï¼ jc |
| | | base.orgTag=ym |
| | | # å峪å
³ï¼ jyg |
| | | base.orgTag=jyg |
| | | |
| | | # 233æå¡å¨ï¼ |
| | | # å
è°ï¼ 60000 |
| | |
| | | # çå·ï¼ 60103 |
| | | # åå·ï¼ 60104 |
| | | # éå·ï¼ 60105 |
| | | tcp.port=60000 |
| | | # å峪å
³ï¼ 60106 |
| | | tcp.port=60106 |
| | | |
| | | #RTUä¸è¡æ°æ®æå°é´éï¼å¤§äºè¿ä¸ªé´é认为设å¤ç¦»çº¿äºï¼æµæ§ä¸ä½éæ¯3ï¼è¡¨éä¸ä½æºæ¯6ï¼é»è®¤éç¨æ¶é´æé¿ç6 |
| | | base.upData.min.interval=6 |
| | |
| | | # çå·ï¼ mqtt.enable=false mqtt.protocolAndDeviceIds= mqtt.topicAndQos= |
| | | # åå·ï¼ mqtt.enable=false mqtt.protocolAndDeviceIds= mqtt.topicAndQos= |
| | | # éå·ï¼ mqtt.enable=true mqtt.protocolAndDeviceIds=? mqtt.topicAndQos=weather/1,1;soil/1,1;manure/1,1;state/1,1 |
| | | mqtt.enable=false |
| | | # å峪å
³ï¼ mqtt.enable=true mqtt.protocolAndDeviceIds=? mqtt.topicAndQos=weather/1,1;soil/1,1;manure/1,1;state/1,1 |
| | | mqtt.enable=true |
| | | mqtt.ip=127.0.0.1 |
| | | mqtt.port=1883 |
| | | mqtt.user=dyyjy |
| | | mqtt.password=Dyyjy2025,;.abc!@# |
| | | mqtt.protocolAndDeviceIds=sd1/338220031439,sd1/338220031440 |
| | | mqtt.subTopicAndQos=weather/1,1;soil/1,1;manure/1,1;state/1,1 |
| | | mqtt.subTopicAndQos=weather/1,1;soil/1,1;manure/1,1 |
| | | #MQtt设å¤å¨ä¸å®æ¶é´ï¼åéï¼åæªå叿¶æ¯ï¼è®¤ä¸ºè®¾å¤ç¦»çº¿ |
| | | mqtt.noSubThenOff=10 |
| | |
| | | noSubThenOff: MQtt设å¤å¨ä¸å®æ¶é´ï¼åéï¼åæªå叿¶æ¯ï¼è®¤ä¸ºè®¾å¤ç¦»çº¿ |
| | | --> |
| | | <mqtt enable="${mqtt.enable}" |
| | | svIp="121.199.41.121" |
| | | svPort="1883" |
| | | svUserName="dyyjy" |
| | | svUserPassword="Dyyjy2025,;.abc!@#" |
| | | svIp="${mqtt.ip}" |
| | | svPort="${mqtt.port}" |
| | | svUserName="${mqtt.user}" |
| | | svUserPassword="${mqtt.password}" |
| | | poolMaxSize="10" |
| | | useMemoryPersistence="true" |
| | | protocolAndDeviceIds="${mqtt.protocolAndDeviceIds}" |
| | |
| | | static{ |
| | | commands = new String[]{ |
| | | "config æ¥çé
置信æ¯", |
| | | "mw 121 [tag] å½ä»¤å«ä¹ï¼éä¿¡ä¸é´ä»¶å¨äºæå¡å¨ï¼121.199.41.121ï¼ä¸ç[tag](å
è°ym,æ²çspæµè¯testï¼æ¢
æ±mjï¼æ°å¤mqï¼å»¶åºyqï¼é»é¾æ±hljï¼çå·gzï¼åå·lzï¼éå·jc)ç³»ç»é
ç½®", |
| | | "mw 233 [tag] å½ä»¤å«ä¹ï¼éä¿¡ä¸é´ä»¶å¨äºæå¡å¨ï¼8.130.130.233ï¼ä¸ç[tag](å
è°ym,æ²çspæµè¯testï¼æ¢
æ±mjï¼æ°å¤mqï¼å»¶åºyqï¼é»é¾æ±hljï¼çå·gzï¼åå·lzï¼éå·jc)ç³»ç»é
ç½®", |
| | | "mw 121 [tag] å½ä»¤å«ä¹ï¼éä¿¡ä¸é´ä»¶å¨äºæå¡å¨ï¼121.199.41.121ï¼ä¸ç[tag](å
è°ym,æ²çspæµè¯testï¼æ¢
æ±mjï¼æ°å¤mqï¼å»¶åºyqï¼é»é¾æ±hljï¼çå·gzï¼åå·lzï¼éå·jcï¼å峪å
³jyg)ç³»ç»é
ç½®", |
| | | "mw 233 [tag] å½ä»¤å«ä¹ï¼éä¿¡ä¸é´ä»¶å¨äºæå¡å¨ï¼8.130.130.233ï¼ä¸ç[tag](å
è°ym,æ²çspæµè¯testï¼æ¢
æ±mjï¼æ°å¤mqï¼å»¶åºyqï¼é»é¾æ±hljï¼çå·gzï¼åå·lzï¼éå·jcï¼å峪å
³jyg)ç³»ç»é
ç½®", |
| | | "web 121 å½ä»¤å«ä¹ï¼web模åå¨äºæå¡å¨ï¼121.199.41.121ï¼ä¸çé
ç½®", |
| | | "web 233 å½ä»¤å«ä¹ï¼web模åå¨äºæå¡å¨ï¼8.130.130.233ï¼ä¸çé
ç½®", |
| | | "exit éåº", |
| | |
| | | public static final String TcpPort = "tcpPort" ; |
| | | public static final String UpDataMinInterval = "upDataMinInterval" ; |
| | | public static final String WebPort = "webPort" ; |
| | | public static final String MqttEnable = "mqttEnable" ; |
| | | public static final String MqttNoSubThenOff = "noSubThenOff" ; |
| | | public static final String ActutorPort = "actutorPort" ; |
| | | public static final String DbName = "dbName" ; |
| | | public static final String MqttEnable = "mqttEnable" ; |
| | | public static final String MqttNoSubThenOff = "mqttNoSubThenOff" ; |
| | | public static final String mqttServerIp = "mqttServerIp" ; |
| | | public static final String mqttServerPort = "mqttServerPort" ; |
| | | public static final String mqttProtocolAndDeviceIds = "mqttProtocolAndDeviceIds" ; |
| | | public static final String mqttSubTopicAndQos = "mqttSubTopicAndQos" ; |
| | | } |
| | |
| | | newLine = "base.upData.min.interval=" + paramMap.get(ParamKey.UpDataMinInterval); |
| | | }else if(newLine != null && newLine.trim().startsWith("mqtt.enable=")){ |
| | | newLine = "mqtt.enable=" + paramMap.get(ParamKey.MqttEnable); |
| | | }else if(newLine != null && newLine.trim().startsWith("mqtt.ip=")){ |
| | | newLine = "mqtt.ip=" + paramMap.get(ParamKey.mqttServerIp); |
| | | }else if(newLine != null && newLine.trim().startsWith("mqtt.port=")){ |
| | | newLine = "mqtt.port=" + paramMap.get(ParamKey.mqttServerPort); |
| | | }else if(newLine != null && newLine.trim().startsWith("mqtt.protocolAndDeviceIds=")){ |
| | | newLine = "mqtt.protocolAndDeviceIds=" + paramMap.get(ParamKey.mqttProtocolAndDeviceIds); |
| | | }else if(newLine != null && newLine.trim().startsWith("mqtt.subTopicAndQos=")){ |
| | | newLine = "mqtt.subTopicAndQos=" + paramMap.get(ParamKey.mqttSubTopicAndQos); |
| | | }else if(newLine != null && newLine.trim().startsWith("mqtt.noSubThenOff=")){ |
| | | newLine = "mqtt.noSubThenOff=" + paramMap.get(ParamKey.MqttNoSubThenOff); |
| | | } |
| | |
| | | key = ParamKey.WebPort; |
| | | this.getConfig(env, map, paramNamePre + key, key); |
| | | |
| | | key = ParamKey.ActutorPort; |
| | | this.getConfig(env, map, paramNamePre + key, key); |
| | | |
| | | key = ParamKey.DbName; |
| | | this.getConfig(env, map, paramNamePre + key, key); |
| | | |
| | | key = ParamKey.MqttEnable; |
| | | this.getConfig(env, map, paramNamePre + key, key); |
| | | |
| | | key = ParamKey.MqttNoSubThenOff; |
| | | this.getConfig(env, map, paramNamePre + key, key); |
| | | |
| | | key = ParamKey.ActutorPort; |
| | | key = ParamKey.mqttProtocolAndDeviceIds; |
| | | this.getConfig(env, map, paramNamePre + key, key); |
| | | |
| | | key = ParamKey.DbName; |
| | | key = ParamKey.mqttServerIp; |
| | | this.getConfig(env, map, paramNamePre + key, key); |
| | | |
| | | key = ParamKey.mqttServerPort; |
| | | this.getConfig(env, map, paramNamePre + key, key); |
| | | |
| | | key = ParamKey.mqttSubTopicAndQos; |
| | | this.getConfig(env, map, paramNamePre + key, key); |
| | | |
| | | return map ; |
| | |
| | | orgTag: ym |
| | | tcpPort: 60000 |
| | | upDataMinInterval: 6 |
| | | mqttEnable: false |
| | | noSubThenOff: 10 |
| | | webPort: 8070 |
| | | actutorPort: 9070 |
| | | dbName: pipIrr_ym |
| | | mqttEnable: false |
| | | mqttNoSubThenOff: 10 |
| | | mqttServerIp: 127.0.0.1 |
| | | mqttServerPort: 1883 |
| | | mqttProtocolAndDeviceIds: |
| | | mqttSubTopicAndQos: |
| | | sp: |
| | | orgTag: sp |
| | | tcpPort: 62000 |
| | | upDataMinInterval: 6 |
| | | mqttEnable: false |
| | | noSubThenOff: 10 |
| | | webPort: 8073 |
| | | actutorPort: 9073 |
| | | dbName: pipIrr_sp |
| | | mqttEnable: false |
| | | mqttNoSubThenOff: 10 |
| | | mqttServerIp: 127.0.0.1 |
| | | mqttServerPort: 1883 |
| | | mqttProtocolAndDeviceIds: |
| | | mqttSubTopicAndQos: |
| | | test: |
| | | orgTag: test |
| | | tcpPort: 65000 |
| | | upDataMinInterval: 6 |
| | | mqttEnable: false |
| | | noSubThenOff: 10 |
| | | webPort: 8072 |
| | | actutorPort: 9072 |
| | | dbName: pipIrr_test |
| | | mqttEnable: false |
| | | mqttNoSubThenOff: 10 |
| | | mqttServerIp: 127.0.0.1 |
| | | mqttServerPort: 1883 |
| | | mqttProtocolAndDeviceIds: |
| | | mqttSubTopicAndQos: |
| | | mj: |
| | | orgTag: mj |
| | | tcpPort: 61000 |
| | | upDataMinInterval: 6 |
| | | mqttEnable: false |
| | | noSubThenOff: 10 |
| | | webPort: 8071 |
| | | actutorPort: 9071 |
| | | dbName: pipIrr_mj |
| | | mqttEnable: false |
| | | mqttNoSubThenOff: 10 |
| | | mqttServerIp: 127.0.0.1 |
| | | mqttServerPort: 1883 |
| | | mqttProtocolAndDeviceIds: |
| | | mqttSubTopicAndQos: |
| | | sv121: |
| | | mq: |
| | | orgTag: mq |
| | | tcpPort: 60100 |
| | | upDataMinInterval: 6 |
| | | mqttEnable: true |
| | | noSubThenOff: 10 |
| | | webPort: 8100 |
| | | actutorPort: 9100 |
| | | dbName: pipIrr_mq |
| | | mqttEnable: false |
| | | mqttNoSubThenOff: 10 |
| | | mqttServerIp: 127.0.0.1 |
| | | mqttServerPort: 1883 |
| | | mqttProtocolAndDeviceIds: |
| | | mqttSubTopicAndQos: |
| | | yq: |
| | | orgTag: yq |
| | | tcpPort: 60101 |
| | | upDataMinInterval: 6 |
| | | mqttEnable: false |
| | | noSubThenOff: 10 |
| | | webPort: 8101 |
| | | actutorPort: 9101 |
| | | dbName: pipIrr_yq |
| | | mqttEnable: false |
| | | mqttNoSubThenOff: 10 |
| | | mqttServerIp: 127.0.0.1 |
| | | mqttServerPort: 1883 |
| | | mqttProtocolAndDeviceIds: |
| | | mqttSubTopicAndQos: |
| | | hlj: |
| | | orgTag: hlj |
| | | tcpPort: 60102 |
| | | upDataMinInterval: 6 |
| | | mqttEnable: false |
| | | noSubThenOff: 10 |
| | | webPort: 8102 |
| | | actutorPort: 9102 |
| | | dbName: pipIrr_hlj |
| | | mqttEnable: false |
| | | mqttNoSubThenOff: 10 |
| | | mqttServerIp: 127.0.0.1 |
| | | mqttServerPort: 1883 |
| | | mqttProtocolAndDeviceIds: |
| | | mqttSubTopicAndQos: |
| | | gz: |
| | | orgTag: gz |
| | | tcpPort: 60103 |
| | | upDataMinInterval: 6 |
| | | mqttEnable: false |
| | | noSubThenOff: 10 |
| | | webPort: 8103 |
| | | actutorPort: 9103 |
| | | dbName: pipIrr_gz |
| | | mqttEnable: false |
| | | mqttNoSubThenOff: 10 |
| | | mqttServerIp: 127.0.0.1 |
| | | mqttServerPort: 1883 |
| | | mqttProtocolAndDeviceIds: |
| | | mqttSubTopicAndQos: |
| | | lz: |
| | | orgTag: lz |
| | | tcpPort: 60104 |
| | | upDataMinInterval: 6 |
| | | mqttEnable: false |
| | | noSubThenOff: 10 |
| | | webPort: 8104 |
| | | actutorPort: 9104 |
| | | dbName: pipIrr_lz |
| | | mqttEnable: false |
| | | mqttNoSubThenOff: 10 |
| | | mqttServerIp: 127.0.0.1 |
| | | mqttServerPort: 1883 |
| | | mqttProtocolAndDeviceIds: |
| | | mqttSubTopicAndQos: |
| | | jc: |
| | | orgTag: jc |
| | | tcpPort: 60105 |
| | | upDataMinInterval: 6 |
| | | mqttEnable: true |
| | | noSubThenOff: 10 |
| | | webPort: 8105 |
| | | actutorPort: 9105 |
| | | dbName: pipIrr_jc |
| | | mqttEnable: true |
| | | mqttNoSubThenOff: 10 |
| | | mqttServerIp: 127.0.0.1 |
| | | mqttServerPort: 1883 |
| | | mqttProtocolAndDeviceIds: |
| | | mqttSubTopicAndQos: |
| | | jyg: |
| | | orgTag: jyg |
| | | tcpPort: 60106 |
| | | upDataMinInterval: 6 |
| | | webPort: 8106 |
| | | actutorPort: 9106 |
| | | dbName: pipIrr_jyg |
| | | mqttEnable: true |
| | | mqttNoSubThenOff: 10 |
| | | mqttServerIp: 127.0.0.1 |
| | | mqttServerPort: 1883 |
| | | mqttProtocolAndDeviceIds: sd1/2430002404000840,sd1/2430002404000840 |
| | | mqttSubTopicAndQos: weather/1,1;soil/1,1;manure/1,1 |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |
| | |
| | | spring: |
| | | profiles: |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, self |
| | | include: common-web, global, database, database-mq, database-yq, database-hlj, database-gz, database-lz, database-jc, database-jyg, self |