| 
				
			 | 
			
			
				@@ -16,6 +16,7 @@ import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
		
			
			| 
				
					16
				
			 | 
			
				
					16
				
			 | 
			
			
				 import org.springframework.context.annotation.Bean; 
			 | 
		
	
		
			
			| 
				
					17
				
			 | 
			
				
					17
				
			 | 
			
			
				 import org.springframework.context.annotation.Configuration; 
			 | 
		
	
		
			
			| 
				
					18
				
			 | 
			
				
					18
				
			 | 
			
			
				 import org.springframework.jdbc.core.JdbcTemplate; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					19
				
			 | 
			
			
				+import org.springframework.scheduling.annotation.Async; 
			 | 
		
	
		
			
			| 
				
					19
				
			 | 
			
				
					20
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					20
				
			 | 
			
				
					21
				
			 | 
			
			
				 import javax.annotation.Resource; 
			 | 
		
	
		
			
			| 
				
					21
				
			 | 
			
				
					22
				
			 | 
			
			
				 import javax.sql.DataSource; 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -41,37 +42,13 @@ class LogMessage{ 
			 | 
		
	
		
			
			| 
				
					41
				
			 | 
			
				
					42
				
			 | 
			
			
				  * @since 2021/4/14 下午3:16 
			 | 
		
	
		
			
			| 
				
					42
				
			 | 
			
				
					43
				
			 | 
			
			
				  */ 
			 | 
		
	
		
			
			| 
				
					43
				
			 | 
			
				
					44
				
			 | 
			
			
				 @Configuration 
			 | 
		
	
		
			
			| 
				
					44
				
			 | 
			
				
			 | 
			
			
				-public class CamelJDBCConfiguration /*extends RouteBuilder */ { 
			 | 
		
	
		
			
			| 
				
					45
				
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				
					46
				
			 | 
			
				
			 | 
			
			
				-    public Double min(String[] strings){ 
			 | 
		
	
		
			
			| 
				
					47
				
			 | 
			
				
			 | 
			
			
				-        double[] doubles = new double[strings.length]; 
			 | 
		
	
		
			
			| 
				
					48
				
			 | 
			
				
			 | 
			
			
				-        for (int i = 0; i < strings.length; i++) { 
			 | 
		
	
		
			
			| 
				
					49
				
			 | 
			
				
			 | 
			
			
				-            doubles[i] = Double.parseDouble(strings[i]); 
			 | 
		
	
		
			
			| 
				
					50
				
			 | 
			
				
			 | 
			
			
				-        } 
			 | 
		
	
		
			
			| 
				
					51
				
			 | 
			
				
			 | 
			
			
				-        return Arrays.stream(doubles).min().getAsDouble(); 
			 | 
		
	
		
			
			| 
				
					52
				
			 | 
			
				
			 | 
			
			
				-    } 
			 | 
		
	
		
			
			| 
				
					53
				
			 | 
			
				
			 | 
			
			
				-    //获取最大载荷 
			 | 
		
	
		
			
			| 
				
					54
				
			 | 
			
				
			 | 
			
			
				-    public Double max(String[] strings){ 
			 | 
		
	
		
			
			| 
				
					55
				
			 | 
			
				
			 | 
			
			
				-        double[] doubles = new double[strings.length]; 
			 | 
		
	
		
			
			| 
				
					56
				
			 | 
			
				
			 | 
			
			
				-        for (int i = 0; i < strings.length; i++) { 
			 | 
		
	
		
			
			| 
				
					57
				
			 | 
			
				
			 | 
			
			
				-            doubles[i] = Double.parseDouble(strings[i]); 
			 | 
		
	
		
			
			| 
				
					58
				
			 | 
			
				
			 | 
			
			
				-        } 
			 | 
		
	
		
			
			| 
				
					59
				
			 | 
			
				
			 | 
			
			
				-        return Arrays.stream(doubles).max().getAsDouble(); 
			 | 
		
	
		
			
			| 
				
					60
				
			 | 
			
				
			 | 
			
			
				-    } 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					45
				
			 | 
			
			
				+public class CamelJDBCConfiguration { 
			 | 
		
	
		
			
			| 
				
					61
				
			 | 
			
				
					46
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					62
				
			 | 
			
				
					47
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					63
				
			 | 
			
				
					48
				
			 | 
			
			
				     public String getDate(){ 
			 | 
		
	
		
			
			| 
				
					64
				
			 | 
			
				
					49
				
			 | 
			
			
				         return  LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); 
			 | 
		
	
		
			
			| 
				
					65
				
			 | 
			
				
					50
				
			 | 
			
			
				     } 
			 | 
		
	
		
			
			| 
				
					66
				
			 | 
			
				
					51
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					67
				
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				
					68
				
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				
					69
				
			 | 
			
				
			 | 
			
			
				-    private static Integer sendMsgRunTime=0; 
			 | 
		
	
		
			
			| 
				
					70
				
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				
					71
				
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				
					72
				
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				
					73
				
			 | 
			
				
			 | 
			
			
				-    @Resource(name = "diagnoseMessageProducer") 
			 | 
		
	
		
			
			| 
				
					74
				
			 | 
			
				
			 | 
			
			
				-    private MessageProducer producer; 
			 | 
		
	
		
			
			| 
				
					75
				
			 | 
			
				
					52
				
			 | 
			
			
				     @Bean 
			 | 
		
	
		
			
			| 
				
					76
				
			 | 
			
				
					53
				
			 | 
			
			
				     public RouteBuilder routeBuilderWithOracle1() { 
			 | 
		
	
		
			
			| 
				
					77
				
			 | 
			
				
					54
				
			 | 
			
			
				         return new RouteBuilder() { 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -171,9 +148,8 @@ public class CamelJDBCConfiguration /*extends RouteBuilder */ { 
			 | 
		
	
		
			
			| 
				
					171
				
			 | 
			
				
					148
				
			 | 
			
			
				                         .log("${header.date}"+" routeId:oracle-1->  centralbase.cb_pc_organization update data failed") 
			 | 
		
	
		
			
			| 
				
					172
				
			 | 
			
				
					149
				
			 | 
			
			
				                         .end();*/ 
			 | 
		
	
		
			
			| 
				
					173
				
			 | 
			
				
					150
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					174
				
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				
					175
				
			 | 
			
				
			 | 
			
			
				-                from("timer:mytimer2?period=3600000") 
			 | 
		
	
		
			
			| 
				
					176
				
			 | 
			
				
			 | 
			
			
				-                        .routeId("oracle-2") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					151
				
			 | 
			
			
				+                from("timer:mytimer-insert-statusDaily?period=3600000") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					152
				
			 | 
			
			
				+                        .routeId("insert-statusDaily") 
			 | 
		
	
		
			
			| 
				
					177
				
			 | 
			
				
					153
				
			 | 
			
			
				                         .setHeader("date", constant(getDate())) 
			 | 
		
	
		
			
			| 
				
					178
				
			 | 
			
				
					154
				
			 | 
			
			
				                         .setBody(simple("select  distinct jh,rq,cyfs,yz,hysx , yysx ,tysx,bs,dym from DBA01 where rq  = to_date('${header.date}','yyyy-MM-dd') and qyrq is not null ")) 
			 | 
		
	
		
			
			| 
				
					179
				
			 | 
			
				
					155
				
			 | 
			
			
				                         .to("jdbc:oracle") 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -186,34 +162,32 @@ public class CamelJDBCConfiguration /*extends RouteBuilder */ { 
			 | 
		
	
		
			
			| 
				
					186
				
			 | 
			
				
					162
				
			 | 
			
			
				                     if (aRow.get("TYSX") == null) aRow.put("TYSX", "0.0"); 
			 | 
		
	
		
			
			| 
				
					187
				
			 | 
			
				
					163
				
			 | 
			
			
				                     if (aRow.get("BS") == null) aRow.put("BS", "0.0"); 
			 | 
		
	
		
			
			| 
				
					188
				
			 | 
			
				
					164
				
			 | 
			
			
				                 }) 
			 | 
		
	
		
			
			| 
				
					189
				
			 | 
			
				
			 | 
			
			
				-                        .doTry() 
			 | 
		
	
		
			
			| 
				
					190
				
			 | 
			
				
					165
				
			 | 
			
			
				                         .setBody(simple("insert into centralbase.cb_pc_pro_wellbore_status_daily(well_id,prod_date,oil_prod_method,oil_nozzle,back_pres,tubing_pres,casing_pres,pump_depth) " + 
			 | 
		
	
		
			
			| 
				
					191
				
			 | 
			
				
					166
				
			 | 
			
			
				                                 "select '${body[JH]}','${body[RQ]}','${body[CYFS]}','${body[YZ]}','${body[HYSX]}','${body[YYSX]}','${body[TYSX]}','${body[BS]}' " + 
			 | 
		
	
		
			
			| 
				
					192
				
			 | 
			
				
					167
				
			 | 
			
			
				                                 "where NOT EXISTS ( SELECT * FROM centralbase.cb_pc_pro_wellbore_status_daily WHERE well_id = '${body[JH]}' and  prod_date = '${body[RQ]}')")) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					168
				
			 | 
			
			
				+                        .doTry() 
			 | 
		
	
		
			
			| 
				
					193
				
			 | 
			
				
					169
				
			 | 
			
			
				                         .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					194
				
			 | 
			
				
					170
				
			 | 
			
			
				                         .doCatch(Exception.class) 
			 | 
		
	
		
			
			| 
				
					195
				
			 | 
			
				
			 | 
			
			
				-                        .log("${header.date}"+" routeId:oracle-2->  centralbase.cb_pc_pro_wellbore_status_daily insert data failed") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					171
				
			 | 
			
			
				+                        .log("${header.date}"+" routeId:insert-statusDaily ->  centralbase.cb_pc_pro_wellbore_status_daily insert data failed") 
			 | 
		
	
		
			
			| 
				
					196
				
			 | 
			
				
					172
				
			 | 
			
			
				                         .end(); 
			 | 
		
	
		
			
			| 
				
					197
				
			 | 
			
				
					173
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					198
				
			 | 
			
				
			 | 
			
			
				-                from("timer:mytimer5?period=3600000") 
			 | 
		
	
		
			
			| 
				
					199
				
			 | 
			
				
			 | 
			
			
				-                        .routeId("oracle-5") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					174
				
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					175
				
			 | 
			
			
				+                from("timer:mytimer-update-statusDaily-DYM?period=3600000") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					176
				
			 | 
			
			
				+                        .routeId("update-statusDaily-DYM") 
			 | 
		
	
		
			
			| 
				
					200
				
			 | 
			
				
					177
				
			 | 
			
			
				                         .setHeader("date", constant(getDate() + " 00:00:00")) 
			 | 
		
	
		
			
			| 
				
					201
				
			 | 
			
				
			 | 
			
			
				-                        //三个月之内dym不为空的数据 
			 | 
		
	
		
			
			| 
				
					202
				
			 | 
			
				
			 | 
			
			
				-                        //.setBody(simple("SELECT distinct jh,rq,dym FROM DBA01 WHERE  rq between to_date(TO_CHAR(ADD_MONTHS(SYSDATE,-3),'yyyy-MM-dd'),'yyyy-MM-dd')and to_date(TO_CHAR(SYSDATE,'yyyy-MM-dd'),'yyyy-MM-dd') and dym is not null;")) 
			 | 
		
	
		
			
			| 
				
					203
				
			 | 
			
				
					178
				
			 | 
			
			
				                         .setBody(simple("SELECT  distinct jh,max(rq),dym FROM DBA01 WHERE dym is not null group by jh,dym")) 
			 | 
		
	
		
			
			| 
				
					204
				
			 | 
			
				
					179
				
			 | 
			
			
				                         .to("jdbc:oracle") 
			 | 
		
	
		
			
			| 
				
					205
				
			 | 
			
				
					180
				
			 | 
			
			
				                         .split(body()) 
			 | 
		
	
		
			
			| 
				
					206
				
			 | 
			
				
			 | 
			
			
				-                        .doTry() 
			 | 
		
	
		
			
			| 
				
					207
				
			 | 
			
				
					181
				
			 | 
			
			
				                         .setBody(simple("update centralbase.cb_pc_pro_wellbore_status_daily set start_pump_liq_level = '${body[DYM]}' where well_id = '${body[JH]}' and prod_date::date  = '${header.date}' ")) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					182
				
			 | 
			
			
				+                        .doTry() 
			 | 
		
	
		
			
			| 
				
					208
				
			 | 
			
				
					183
				
			 | 
			
			
				                         .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					209
				
			 | 
			
				
					184
				
			 | 
			
			
				                         .doCatch(Exception.class) 
			 | 
		
	
		
			
			| 
				
					210
				
			 | 
			
				
			 | 
			
			
				-                        .log("${header.date}"+" routeId:oracle-5->  centralbase.cb_pc_pro_wellbore_status_daily update data failed") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					185
				
			 | 
			
			
				+                        .log("${header.date}"+" routeId:update-statusDaily-DYM ->  centralbase.cb_pc_pro_wellbore_status_daily update data failed") 
			 | 
		
	
		
			
			| 
				
					211
				
			 | 
			
				
					186
				
			 | 
			
			
				                         .end(); 
			 | 
		
	
		
			
			| 
				
					212
				
			 | 
			
				
					187
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					213
				
			 | 
			
				
			 | 
			
			
				-                from("timer:mytimer7?period=3600000") 
			 | 
		
	
		
			
			| 
				
					214
				
			 | 
			
				
			 | 
			
			
				-                        .routeId("oracle-7") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					188
				
			 | 
			
			
				+                from("timer:mytimer-update-statusDaily-submergenceDepth?period=3600000") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					189
				
			 | 
			
			
				+                        .routeId("update-statusDaily-submergenceDepth") 
			 | 
		
	
		
			
			| 
				
					215
				
			 | 
			
				
					190
				
			 | 
			
			
				                         .setHeader("date", constant(getDate() + " 00:00:00")) 
			 | 
		
	
		
			
			| 
				
					216
				
			 | 
			
				
			 | 
			
			
				-                        //.setBody(simple("SELECT  distinct jh,max(rq),dym FROM DBA01 WHERE dym is not null group by jh,dym")) 
			 | 
		
	
		
			
			| 
				
					217
				
			 | 
			
				
					191
				
			 | 
			
			
				                         .setBody(simple("select well_id,prod_date,start_pump_liq_level,pump_depth from centralbase.cb_pc_pro_wellbore_status_daily where prod_date = '${header.date}' ")) 
			 | 
		
	
		
			
			| 
				
					218
				
			 | 
			
				
					192
				
			 | 
			
			
				                         .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					219
				
			 | 
			
				
					193
				
			 | 
			
			
				                         .split(body()).process(exchange -> { 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -227,15 +201,36 @@ public class CamelJDBCConfiguration /*extends RouteBuilder */ { 
			 | 
		
	
		
			
			| 
				
					227
				
			 | 
			
				
					201
				
			 | 
			
			
				                                 aRow.put("submergence_depth",cmd1); 
			 | 
		
	
		
			
			| 
				
					228
				
			 | 
			
				
					202
				
			 | 
			
			
				                             } 
			 | 
		
	
		
			
			| 
				
					229
				
			 | 
			
				
					203
				
			 | 
			
			
				                 }) 
			 | 
		
	
		
			
			| 
				
					230
				
			 | 
			
				
			 | 
			
			
				-                        .doTry() 
			 | 
		
	
		
			
			| 
				
					231
				
			 | 
			
				
					204
				
			 | 
			
			
				                         .setBody(simple("update centralbase.cb_pc_pro_wellbore_status_daily set submergence_depth = '${body[submergence_depth]}' where well_id = '${body[well_id]}' and prod_date  = '${body[prod_date]}'")) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					205
				
			 | 
			
			
				+                        .doTry() 
			 | 
		
	
		
			
			| 
				
					232
				
			 | 
			
				
					206
				
			 | 
			
			
				                         .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					233
				
			 | 
			
				
					207
				
			 | 
			
			
				                         .doCatch(Exception.class) 
			 | 
		
	
		
			
			| 
				
					234
				
			 | 
			
				
			 | 
			
			
				-                        .log("${header.date}"+" routeId:oracle-7->  centralbase.cb_pc_pro_wellbore_status_daily update data failed") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					208
				
			 | 
			
			
				+                        .log("${header.date}"+" routeId:update-statusDaily-submergenceDepth ->  centralbase.cb_pc_pro_wellbore_status_daily update data failed") 
			 | 
		
	
		
			
			| 
				
					235
				
			 | 
			
				
					209
				
			 | 
			
			
				                         .end(); 
			 | 
		
	
		
			
			| 
				
					236
				
			 | 
			
				
					210
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					237
				
			 | 
			
				
			 | 
			
			
				-                from("timer:mytimer3?period=3600000") 
			 | 
		
	
		
			
			| 
				
					238
				
			 | 
			
				
			 | 
			
			
				-                        .routeId("oracle-3") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					211
				
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					212
				
			 | 
			
			
				+                from("timer:mytimer-update-statusDaily-oil_nozzle?period=3600000") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					213
				
			 | 
			
			
				+                        .routeId("update-statusDaily-oil_nozzle") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					214
				
			 | 
			
			
				+                        .setHeader("date", constant(getDate() + " 00:00:00")) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					215
				
			 | 
			
			
				+                        .setBody(simple("select distinct rn.well_id,cb.prod_date,rn.pump_diameter  from centralbase.cb_temp_well_mech_runtime rn ,centralbase.cb_pc_pro_wellbore_status_daily cb where cb.well_id = rn.well_id " + 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					216
				
			 | 
			
			
				+                                "and cb.prod_date = '${header.date}' ")) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					217
				
			 | 
			
			
				+                        .to("jdbc:centralbase")//.log("${body}") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					218
				
			 | 
			
			
				+                        .split(body()).process(exchange -> { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					219
				
			 | 
			
			
				+                            Message in = exchange.getIn(); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					220
				
			 | 
			
			
				+                            HashMap<String, Object> aRow = in.getBody(HashMap.class); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					221
				
			 | 
			
			
				+                            aRow.putIfAbsent("pump_diameter", "0.0"); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					222
				
			 | 
			
			
				+                        }) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					223
				
			 | 
			
			
				+                        .setBody(simple("update centralbase.cb_pc_pro_wellbore_status_daily set oil_nozzle = '${body[pump_diameter]}' where well_id ='${body[well_id]}' and prod_date='${body[prod_date]}' ")) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					224
				
			 | 
			
			
				+                        .doTry() 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					225
				
			 | 
			
			
				+                        .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					226
				
			 | 
			
			
				+                        .doCatch(Exception.class) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					227
				
			 | 
			
			
				+                        .log("${header.date}"+" routeId:update-statusDaily-oil_nozzle ->  centralbase.cb_pc_pro_wellbore_status_daily update data failed") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					228
				
			 | 
			
			
				+                        .end(); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					229
				
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					230
				
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					231
				
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					232
				
			 | 
			
			
				+                from("timer:mytimer-insert-volDaily?period=3600000") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					233
				
			 | 
			
			
				+                        .routeId("insert-volDaily") 
			 | 
		
	
		
			
			| 
				
					239
				
			 | 
			
				
					234
				
			 | 
			
			
				                         .setHeader("date", constant(getDate())) 
			 | 
		
	
		
			
			| 
				
					240
				
			 | 
			
				
					235
				
			 | 
			
			
				                         .setBody(simple("select distinct  jh,rq,scsj, rcyl1,rcyl,rcql,hs, bz from DBA01 where rq  = to_date('${header.date}','yyyy-MM-dd') and qyrq is not null ")) 
			 | 
		
	
		
			
			| 
				
					241
				
			 | 
			
				
					236
				
			 | 
			
			
				                         .to("jdbc:oracle") 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -282,26 +277,23 @@ public class CamelJDBCConfiguration /*extends RouteBuilder */ { 
			 | 
		
	
		
			
			| 
				
					282
				
			 | 
			
				
					277
				
			 | 
			
			
				                         aRow.put("YMD",0.85); 
			 | 
		
	
		
			
			| 
				
					283
				
			 | 
			
				
					278
				
			 | 
			
			
				                     } 
			 | 
		
	
		
			
			| 
				
					284
				
			 | 
			
				
					279
				
			 | 
			
			
				                 }) 
			 | 
		
	
		
			
			| 
				
					285
				
			 | 
			
				
			 | 
			
			
				-                        .doTry() 
			 | 
		
	
		
			
			| 
				
					286
				
			 | 
			
				
					280
				
			 | 
			
			
				                         .setBody(simple("insert into centralbase.cb_pc_pro_wellbore_vol_daily(well_id,prod_date,prod_time,liq_prod_daily,oil_prod_daily,gas_prod_daily,water_cut,remarks,gas_oil_ratio,water_prod_daily,water_gas_ratio,surface_crude_water_density,surface_crude_oil_density) " + 
			 | 
		
	
		
			
			| 
				
					287
				
			 | 
			
				
					281
				
			 | 
			
			
				                                 "select '${body[JH]}','${body[RQ]}','${body[SCSJ]}','${body[RCYL1]}','${body[RCYL]}','${body[RCQL]}','${body[HS]}','${body[BZ]}','${body[QYB]}','${body[RCSL]}','${body[SQB]}','${body[SMD]}','${body[YMD]}' " + 
			 | 
		
	
		
			
			| 
				
					288
				
			 | 
			
				
					282
				
			 | 
			
			
				                                 "where NOT EXISTS ( SELECT * FROM centralbase.cb_pc_pro_wellbore_vol_daily WHERE well_id = '${body[JH]}' and  prod_date = '${body[RQ]}' )")) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					283
				
			 | 
			
			
				+                        .doTry() 
			 | 
		
	
		
			
			| 
				
					289
				
			 | 
			
				
					284
				
			 | 
			
			
				                         .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					290
				
			 | 
			
				
					285
				
			 | 
			
			
				                         .doCatch(Exception.class) 
			 | 
		
	
		
			
			| 
				
					291
				
			 | 
			
				
			 | 
			
			
				-                        .log("${header.date}"+" routeId:oracle-3->  centralbase.cb_pc_pro_wellbore_vol_daily insert data failed") 
			 | 
		
	
		
			
			| 
				
					292
				
			 | 
			
				
			 | 
			
			
				-                        .doTry() 
			 | 
		
	
		
			
			| 
				
					293
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("routeId:oracle-3->  update centralbase.cb_pc_pro_wellbore_vol_daily set  water_prod_daily =null where water_prod_daily = -1 and prod_date = '${header.date}' ")) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					286
				
			 | 
			
			
				+                        .log("${header.date}"+" routeId:insert-volDaily ->  centralbase.cb_pc_pro_wellbore_vol_daily insert data failed") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					287
				
			 | 
			
			
				+                        .setBody(simple("update centralbase.cb_pc_pro_wellbore_vol_daily set  water_prod_daily =null where water_prod_daily = -1 and prod_date = '${header.date}' ")) 
			 | 
		
	
		
			
			| 
				
					294
				
			 | 
			
				
					288
				
			 | 
			
			
				                         .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					295
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("routeId:oracle-3->  update centralbase.cb_pc_pro_wellbore_vol_daily set  gas_oil_ratio =null where gas_oil_ratio = -1 and prod_date = '${header.date}' ")) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					289
				
			 | 
			
			
				+                        .setBody(simple("update centralbase.cb_pc_pro_wellbore_vol_daily set  gas_oil_ratio =null where gas_oil_ratio = -1 and prod_date = '${header.date}' ")) 
			 | 
		
	
		
			
			| 
				
					296
				
			 | 
			
				
					290
				
			 | 
			
			
				                         .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					297
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple(" routeId:oracle-3->  update centralbase.cb_pc_pro_wellbore_vol_daily set  water_gas_ratio =null where water_gas_ratio = -1 and prod_date = '${header.date}' ")) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					291
				
			 | 
			
			
				+                        .setBody(simple("update centralbase.cb_pc_pro_wellbore_vol_daily set  water_gas_ratio =null where water_gas_ratio = -1 and prod_date = '${header.date}' ")) 
			 | 
		
	
		
			
			| 
				
					298
				
			 | 
			
				
					292
				
			 | 
			
			
				                         .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					299
				
			 | 
			
				
			 | 
			
			
				-                        .doCatch(Exception.class) 
			 | 
		
	
		
			
			| 
				
					300
				
			 | 
			
				
			 | 
			
			
				-                        .log("${header.date}"+" routeId:oracle-3->  centralbase.cb_pc_pro_wellbore_vol_daily update data failed") 
			 | 
		
	
		
			
			| 
				
					301
				
			 | 
			
				
					293
				
			 | 
			
			
				                         .end(); 
			 | 
		
	
		
			
			| 
				
					302
				
			 | 
			
				
					294
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					303
				
			 | 
			
				
			 | 
			
			
				-                from("timer:mytimer12?period=3600000") 
			 | 
		
	
		
			
			| 
				
					304
				
			 | 
			
				
			 | 
			
			
				-                        .routeId("oracle-12") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					295
				
			 | 
			
			
				+                from("timer:mytimer-update-volDaily-liq_prod_daily?period=3600000") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					296
				
			 | 
			
			
				+                        .routeId("update-volDaily-liq_prod_daily") 
			 | 
		
	
		
			
			| 
				
					305
				
			 | 
			
				
					297
				
			 | 
			
			
				                         .setHeader("date", constant(getDate())) 
			 | 
		
	
		
			
			| 
				
					306
				
			 | 
			
				
					298
				
			 | 
			
			
				                         .setBody(simple("select distinct  jh,rq,scsj, rcyl1,rcyl,rcql,hs, bz from DBA01 where rq  = to_date('${header.date}','yyyy-MM-dd') and qyrq is not null ")) 
			 | 
		
	
		
			
			| 
				
					307
				
			 | 
			
				
					299
				
			 | 
			
			
				                         .to("jdbc:oracle") 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -348,193 +340,18 @@ public class CamelJDBCConfiguration /*extends RouteBuilder */ { 
			 | 
		
	
		
			
			| 
				
					348
				
			 | 
			
				
					340
				
			 | 
			
			
				                                 aRow.put("YMD",0.85); 
			 | 
		
	
		
			
			| 
				
					349
				
			 | 
			
				
					341
				
			 | 
			
			
				                             } 
			 | 
		
	
		
			
			| 
				
					350
				
			 | 
			
				
					342
				
			 | 
			
			
				                         }) 
			 | 
		
	
		
			
			| 
				
					351
				
			 | 
			
				
			 | 
			
			
				-                        .doTry() 
			 | 
		
	
		
			
			| 
				
					352
				
			 | 
			
				
					343
				
			 | 
			
			
				                         .setBody(simple("update centralbase.cb_pc_pro_wellbore_vol_daily set prod_time = '${body[SCSJ]}' ,liq_prod_daily='${body[RCYL1]}' ,oil_prod_daily ='${body[RCYL]}' ,gas_prod_daily ='${body[RCQL]}' ,water_cut='${body[HS]}' ,remarks='${body[BZ]}' ,gas_oil_ratio='${body[QYB]}' ,water_prod_daily='${body[RCSL]}' ,water_gas_ratio='${body[SQB]}',surface_crude_water_density='${body[SMD]}',surface_crude_oil_density= '${body[YMD]}' " + 
			 | 
		
	
		
			
			| 
				
					353
				
			 | 
			
				
					344
				
			 | 
			
			
				                                 "where well_id = '${body[JH]}' and prod_date ='${body[RQ]}' ")) 
			 | 
		
	
		
			
			| 
				
					354
				
			 | 
			
				
			 | 
			
			
				-                        .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					355
				
			 | 
			
				
			 | 
			
			
				-                        .doCatch(Exception.class) 
			 | 
		
	
		
			
			| 
				
					356
				
			 | 
			
				
			 | 
			
			
				-                        .log("${header.date}"+" routeId:oracle-12->  centralbase.cb_pc_pro_wellbore_vol_daily update data failed") 
			 | 
		
	
		
			
			| 
				
					357
				
			 | 
			
				
			 | 
			
			
				-                        .end(); 
			 | 
		
	
		
			
			| 
				
					358
				
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				
					359
				
			 | 
			
				
			 | 
			
			
				-                from("timer:mytimer4?period=3600000") 
			 | 
		
	
		
			
			| 
				
					360
				
			 | 
			
				
			 | 
			
			
				-                        .routeId("oracle-4") 
			 | 
		
	
		
			
			| 
				
					361
				
			 | 
			
				
			 | 
			
			
				-                        .setHeader("date", constant(getDate())) 
			 | 
		
	
		
			
			| 
				
					362
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("select distinct jh,rq,dym,jy,ly,bj,bs,bx,zs,cc,cs,blx,dl from DBA01 where rq  = to_date('${header.date}','yyyy-MM-dd') and qyrq is not null  ")) 
			 | 
		
	
		
			
			| 
				
					363
				
			 | 
			
				
			 | 
			
			
				-                        .to("jdbc:oracle") 
			 | 
		
	
		
			
			| 
				
					364
				
			 | 
			
				
			 | 
			
			
				-                        .split(body()).process(exchange -> { 
			 | 
		
	
		
			
			| 
				
					365
				
			 | 
			
				
			 | 
			
			
				-                    Message in = exchange.getIn(); 
			 | 
		
	
		
			
			| 
				
					366
				
			 | 
			
				
			 | 
			
			
				-                    HashMap<String, Object> aRow = in.getBody(HashMap.class); 
			 | 
		
	
		
			
			| 
				
					367
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("JY") == null) aRow.put("JY", "0.0"); 
			 | 
		
	
		
			
			| 
				
					368
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("LY") == null) aRow.put("LY", "0.0"); 
			 | 
		
	
		
			
			| 
				
					369
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("BJ") == null) aRow.put("BJ", "0.0"); 
			 | 
		
	
		
			
			| 
				
					370
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("BS") == null) aRow.put("BS", "0.0"); 
			 | 
		
	
		
			
			| 
				
					371
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("BX") == null) aRow.put("BX", "0.0"); 
			 | 
		
	
		
			
			| 
				
					372
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("ZS") == null) aRow.put("ZS", "0.0"); 
			 | 
		
	
		
			
			| 
				
					373
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("CC") == null) aRow.put("CC", "0.0"); 
			 | 
		
	
		
			
			| 
				
					374
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("CS") == null) aRow.put("CS", "0.0"); 
			 | 
		
	
		
			
			| 
				
					375
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("BLX") == null) aRow.put("BLX", ""); 
			 | 
		
	
		
			
			| 
				
					376
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("DL") == null) aRow.put("DL", "0.0"); 
			 | 
		
	
		
			
			| 
				
					377
				
			 | 
			
				
			 | 
			
			
				-                }) 
			 | 
		
	
		
			
			| 
				
					378
				
			 | 
			
				
					345
				
			 | 
			
			
				                         .doTry() 
			 | 
		
	
		
			
			| 
				
					379
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("insert into centralbase.cb_temp_well_mech_daily(well_id,prod_date,static_pressure,flow_pres,pump_diameter,pump_depth,pump_efficiency,rotate_frequency,stroke_length,stroke_frequency,pump_type,elec_frequency) " + 
			 | 
		
	
		
			
			| 
				
					380
				
			 | 
			
				
			 | 
			
			
				-                                "select '${body[JH]}','${body[RQ]}','${body[JY]}','${body[LY]}','${body[BJ]}','${body[BS]}','${body[BX]}','${body[ZS]}','${body[CC]}','${body[CS]}','${body[BLX]}','${body[DL]}' " + 
			 | 
		
	
		
			
			| 
				
					381
				
			 | 
			
				
			 | 
			
			
				-                                "where NOT EXISTS ( SELECT * FROM centralbase.cb_temp_well_mech_daily WHERE well_id = '${body[JH]}' and  prod_date = '${body[RQ]}' )")) 
			 | 
		
	
		
			
			| 
				
					382
				
			 | 
			
				
					346
				
			 | 
			
			
				                         .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					383
				
			 | 
			
				
					347
				
			 | 
			
			
				                         .doCatch(Exception.class) 
			 | 
		
	
		
			
			| 
				
					384
				
			 | 
			
				
			 | 
			
			
				-                        .log("${header.date}"+" routeId:oracle-4->  centralbase.cb_temp_well_mech_daily insert data failed") 
			 | 
		
	
		
			
			| 
				
					385
				
			 | 
			
				
			 | 
			
			
				-                        .end(); 
			 | 
		
	
		
			
			| 
				
					386
				
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				
					387
				
			 | 
			
				
			 | 
			
			
				-                from("timer:mytimer6?period=3600000") 
			 | 
		
	
		
			
			| 
				
					388
				
			 | 
			
				
			 | 
			
			
				-                        .routeId("oracle-6") 
			 | 
		
	
		
			
			| 
				
					389
				
			 | 
			
				
			 | 
			
			
				-                        .setHeader("date", constant(getDate() + " 00:00:00")) 
			 | 
		
	
		
			
			| 
				
					390
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("SELECT  distinct jh,max(rq),bj FROM DBA01 WHERE dym is not null group by jh,bj")) 
			 | 
		
	
		
			
			| 
				
					391
				
			 | 
			
				
			 | 
			
			
				-                        .to("jdbc:oracle") 
			 | 
		
	
		
			
			| 
				
					392
				
			 | 
			
				
			 | 
			
			
				-                        .split(body()).process(exchange -> { 
			 | 
		
	
		
			
			| 
				
					393
				
			 | 
			
				
			 | 
			
			
				-                            Message in = exchange.getIn(); 
			 | 
		
	
		
			
			| 
				
					394
				
			 | 
			
				
			 | 
			
			
				-                            HashMap<String, Object> aRow = in.getBody(HashMap.class); 
			 | 
		
	
		
			
			| 
				
					395
				
			 | 
			
				
			 | 
			
			
				-                            if (aRow.get("BJ") ==null || aRow.get("BJ").equals("")) aRow.put("BJ","0.0"); 
			 | 
		
	
		
			
			| 
				
					396
				
			 | 
			
				
			 | 
			
			
				-                        }) 
			 | 
		
	
		
			
			| 
				
					397
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("update centralbase.cb_temp_well_mech_runtime set pump_diameter = '${body[BJ]}' where well_id = '${body[JH]}' ")) 
			 | 
		
	
		
			
			| 
				
					398
				
			 | 
			
				
			 | 
			
			
				-                        .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					399
				
			 | 
			
				
			 | 
			
			
				-                        .log("${header.date}"+" routeId:oracle-6->  centralbase.cb_temp_well_mech_runtime update data failed") 
			 | 
		
	
		
			
			| 
				
					400
				
			 | 
			
				
			 | 
			
			
				-                        .end(); 
			 | 
		
	
		
			
			| 
				
					401
				
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				
					402
				
			 | 
			
				
			 | 
			
			
				-                from("timer:mytimer8?period=3600000") 
			 | 
		
	
		
			
			| 
				
					403
				
			 | 
			
				
			 | 
			
			
				-                        .routeId("jdbc-gtsj-?") 
			 | 
		
	
		
			
			| 
				
					404
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("select max(prod_date) from centralbase.cb_temp_well_mech_runtime ")) 
			 | 
		
	
		
			
			| 
				
					405
				
			 | 
			
				
			 | 
			
			
				-                        .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					406
				
			 | 
			
				
			 | 
			
			
				-                        .split(body()) 
			 | 
		
	
		
			
			| 
				
					407
				
			 | 
			
				
			 | 
			
			
				-                        .setHeader("date", simple("${body[max]}")) 
			 | 
		
	
		
			
			| 
				
					408
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("select distinct well_name,dyna_create_time,check_date,displacement,disp_load,stroke,frequency,susp_max_load,susp_min_load from public.pc_fd_pumpjack_dyna_dia_t where   dyna_create_time > '${header.date}' ")) 
			 | 
		
	
		
			
			| 
				
					409
				
			 | 
			
				
			 | 
			
			
				-                        .to("jdbc:gtsj") 
			 | 
		
	
		
			
			| 
				
					410
				
			 | 
			
				
			 | 
			
			
				-                        .split(body()).process(exchange -> { 
			 | 
		
	
		
			
			| 
				
					411
				
			 | 
			
				
			 | 
			
			
				-                    Message in = exchange.getIn(); 
			 | 
		
	
		
			
			| 
				
					412
				
			 | 
			
				
			 | 
			
			
				-                    HashMap<String, Object> aRow = in.getBody(HashMap.class); 
			 | 
		
	
		
			
			| 
				
					413
				
			 | 
			
				
			 | 
			
			
				-                    String prod_date = aRow.get("dyna_create_time").toString().split("\\+")[0]; 
			 | 
		
	
		
			
			| 
				
					414
				
			 | 
			
				
			 | 
			
			
				-                    aRow.put("dyna_create_time", prod_date); 
			 | 
		
	
		
			
			| 
				
					415
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("displacement") != null && !aRow.get("displacement").equals("") && aRow.get("disp_load") != null && !aRow.get("disp_load").equals("")) { 
			 | 
		
	
		
			
			| 
				
					416
				
			 | 
			
				
			 | 
			
			
				-                        String[] displacements = aRow.get("displacement").toString().split(";");//10 四舍五入 
			 | 
		
	
		
			
			| 
				
					417
				
			 | 
			
				
			 | 
			
			
				-                        //String[] displacements = wy(displacementsOld); 
			 | 
		
	
		
			
			| 
				
					418
				
			 | 
			
				
			 | 
			
			
				-                        String[] disp_loads = aRow.get("disp_load").toString().split(";"); 
			 | 
		
	
		
			
			| 
				
					419
				
			 | 
			
				
			 | 
			
			
				-                        Double susp_max_load = max(disp_loads); 
			 | 
		
	
		
			
			| 
				
					420
				
			 | 
			
				
			 | 
			
			
				-                        Double susp_min_load = min(disp_loads); 
			 | 
		
	
		
			
			| 
				
					421
				
			 | 
			
				
			 | 
			
			
				-                        String sgt = ""; 
			 | 
		
	
		
			
			| 
				
					422
				
			 | 
			
				
			 | 
			
			
				-                        for (int i = 0; i < displacements.length; i++) { 
			 | 
		
	
		
			
			| 
				
					423
				
			 | 
			
				
			 | 
			
			
				-                            sgt = sgt + displacements[i] + "," + disp_loads[i] + ","; 
			 | 
		
	
		
			
			| 
				
					424
				
			 | 
			
				
			 | 
			
			
				-                        } 
			 | 
		
	
		
			
			| 
				
					425
				
			 | 
			
				
			 | 
			
			
				-                        String[] s = sgt.split(","); 
			 | 
		
	
		
			
			| 
				
					426
				
			 | 
			
				
			 | 
			
			
				-                        String w = ""; 
			 | 
		
	
		
			
			| 
				
					427
				
			 | 
			
				
			 | 
			
			
				-                        for (int i = 0; i < s.length; i++) { 
			 | 
		
	
		
			
			| 
				
					428
				
			 | 
			
				
			 | 
			
			
				-                            w += new BigDecimal(Math.round(Double.parseDouble(s[i]) * 100)).stripTrailingZeros().toPlainString() + ","; 
			 | 
		
	
		
			
			| 
				
					429
				
			 | 
			
				
			 | 
			
			
				-                        } 
			 | 
		
	
		
			
			| 
				
					430
				
			 | 
			
				
			 | 
			
			
				-                        Double[][] doubles = SGTUtil.encodeToDoubleArray(w); 
			 | 
		
	
		
			
			| 
				
					431
				
			 | 
			
				
			 | 
			
			
				-                        aRow.put("sgt", SGTUtil.encodeToString(doubles)); 
			 | 
		
	
		
			
			| 
				
					432
				
			 | 
			
				
			 | 
			
			
				-                        aRow.put("susp_max_load",susp_max_load); 
			 | 
		
	
		
			
			| 
				
					433
				
			 | 
			
				
			 | 
			
			
				-                        aRow.put("susp_min_load",susp_min_load); 
			 | 
		
	
		
			
			| 
				
					434
				
			 | 
			
				
			 | 
			
			
				-                    } 
			 | 
		
	
		
			
			| 
				
					435
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("stroke") == null) aRow.put("stroke", "0.0"); 
			 | 
		
	
		
			
			| 
				
					436
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("frequency") == null) aRow.put("frequency", "0.0"); 
			 | 
		
	
		
			
			| 
				
					437
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("susp_max_load") == null) aRow.put("susp_max_load", "0.0"); 
			 | 
		
	
		
			
			| 
				
					438
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("susp_min_load") == null) aRow.put("susp_min_load", "0.0"); 
			 | 
		
	
		
			
			| 
				
					439
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("frequency") != null){ 
			 | 
		
	
		
			
			| 
				
					440
				
			 | 
			
				
			 | 
			
			
				-                        BigDecimal bd=new BigDecimal(aRow.get("frequency").toString()); 
			 | 
		
	
		
			
			| 
				
					441
				
			 | 
			
				
			 | 
			
			
				-                        double frequency=bd.setScale(1,BigDecimal.ROUND_HALF_UP).doubleValue(); 
			 | 
		
	
		
			
			| 
				
					442
				
			 | 
			
				
			 | 
			
			
				-                        aRow.put("frequency",frequency); 
			 | 
		
	
		
			
			| 
				
					443
				
			 | 
			
				
			 | 
			
			
				-                    } 
			 | 
		
	
		
			
			| 
				
					444
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("stroke") != null){ 
			 | 
		
	
		
			
			| 
				
					445
				
			 | 
			
				
			 | 
			
			
				-                        double stroke1 = Double.parseDouble(aRow.get("stroke").toString()); 
			 | 
		
	
		
			
			| 
				
					446
				
			 | 
			
				
			 | 
			
			
				-                        BigDecimal bd=new BigDecimal(stroke1); 
			 | 
		
	
		
			
			| 
				
					447
				
			 | 
			
				
			 | 
			
			
				-                        double stroke=bd.setScale(1,BigDecimal.ROUND_HALF_UP).doubleValue(); 
			 | 
		
	
		
			
			| 
				
					448
				
			 | 
			
				
			 | 
			
			
				-                        aRow.put("stroke",stroke); 
			 | 
		
	
		
			
			| 
				
					449
				
			 | 
			
				
			 | 
			
			
				-                    } 
			 | 
		
	
		
			
			| 
				
					450
				
			 | 
			
				
			 | 
			
			
				-                }) 
			 | 
		
	
		
			
			| 
				
					451
				
			 | 
			
				
			 | 
			
			
				-                        .doTry() 
			 | 
		
	
		
			
			| 
				
					452
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("insert into centralbase.cb_temp_well_mech_runtime(well_id,prod_date,stroke_length,stroke_frequency,susp_max_load,susp_min_load,sgt) " + 
			 | 
		
	
		
			
			| 
				
					453
				
			 | 
			
				
			 | 
			
			
				-                                "select '${body[well_name]}','${body[dyna_create_time]}','${body[stroke]}','${body[frequency]}','${body[susp_max_load]}','${body[susp_min_load]}','${body[sgt]}' " + 
			 | 
		
	
		
			
			| 
				
					454
				
			 | 
			
				
			 | 
			
			
				-                                "where NOT EXISTS (SELECT * FROM centralbase.cb_temp_well_mech_runtime WHERE well_id = '${body[well_name]}' and  prod_date = '${body[dyna_create_time]}' )")) 
			 | 
		
	
		
			
			| 
				
					455
				
			 | 
			
				
			 | 
			
			
				-                        .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					456
				
			 | 
			
				
			 | 
			
			
				-                        .doCatch(Exception.class) 
			 | 
		
	
		
			
			| 
				
					457
				
			 | 
			
				
			 | 
			
			
				-                        .log("${header.date}"+" routeId:jdbc-gtsj-?->  centralbase.cb_temp_well_mech_runtime insert data failed ${body}") 
			 | 
		
	
		
			
			| 
				
					458
				
			 | 
			
				
			 | 
			
			
				-                        .end(); 
			 | 
		
	
		
			
			| 
				
					459
				
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				
					460
				
			 | 
			
				
			 | 
			
			
				-                  from("timer:mytimer9?period=3600000") 
			 | 
		
	
		
			
			| 
				
					461
				
			 | 
			
				
			 | 
			
			
				-                        .routeId("centralbase-2") 
			 | 
		
	
		
			
			| 
				
					462
				
			 | 
			
				
			 | 
			
			
				-                        .setHeader("date", constant(getDate() + " 00:00:00")) 
			 | 
		
	
		
			
			| 
				
					463
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("select distinct rn.well_id,cb.prod_date,rn.pump_diameter  from centralbase.cb_temp_well_mech_runtime rn ,centralbase.cb_pc_pro_wellbore_status_daily cb where cb.well_id = rn.well_id\n" + 
			 | 
		
	
		
			
			| 
				
					464
				
			 | 
			
				
			 | 
			
			
				-                                "and cb.prod_date = '${header.date}' ")) 
			 | 
		
	
		
			
			| 
				
					465
				
			 | 
			
				
			 | 
			
			
				-                        .to("jdbc:centralbase")//.log("${body}") 
			 | 
		
	
		
			
			| 
				
					466
				
			 | 
			
				
			 | 
			
			
				-                        .split(body()).process(exchange -> { 
			 | 
		
	
		
			
			| 
				
					467
				
			 | 
			
				
			 | 
			
			
				-                            Message in = exchange.getIn(); 
			 | 
		
	
		
			
			| 
				
					468
				
			 | 
			
				
			 | 
			
			
				-                            HashMap<String, Object> aRow = in.getBody(HashMap.class); 
			 | 
		
	
		
			
			| 
				
					469
				
			 | 
			
				
			 | 
			
			
				-                            aRow.putIfAbsent("pump_diameter", "0.0"); 
			 | 
		
	
		
			
			| 
				
					470
				
			 | 
			
				
			 | 
			
			
				-                }) 
			 | 
		
	
		
			
			| 
				
					471
				
			 | 
			
				
			 | 
			
			
				-                        .doTry() 
			 | 
		
	
		
			
			| 
				
					472
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("update centralbase.cb_pc_pro_wellbore_status_daily set oil_nozzle = '${body[pump_diameter]}' where well_id ='${body[well_id]}' and prod_date='${body[prod_date]}' ")) 
			 | 
		
	
		
			
			| 
				
					473
				
			 | 
			
				
			 | 
			
			
				-                        .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					474
				
			 | 
			
				
			 | 
			
			
				-                        .doCatch(Exception.class) 
			 | 
		
	
		
			
			| 
				
					475
				
			 | 
			
				
			 | 
			
			
				-                        .log("${header.date}"+" routeId:centralbase-2->  centralbase.cb_pc_pro_wellbore_status_daily update data failed") 
			 | 
		
	
		
			
			| 
				
					476
				
			 | 
			
				
			 | 
			
			
				-                        .end(); 
			 | 
		
	
		
			
			| 
				
					477
				
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				
					478
				
			 | 
			
				
			 | 
			
			
				-               from("timer:mytimer10?period=3600000") 
			 | 
		
	
		
			
			| 
				
					479
				
			 | 
			
				
			 | 
			
			
				-                        .routeId("centralbase-3") 
			 | 
		
	
		
			
			| 
				
					480
				
			 | 
			
				
			 | 
			
			
				-                        .setHeader("date", constant(getDate())) 
			 | 
		
	
		
			
			| 
				
					481
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("select well_id,avg(stroke_length) stroke_length  ,avg(stroke_frequency) stroke_frequency from centralbase.cb_temp_well_mech_runtime where prod_date::date='${header.date}' group by well_id")) 
			 | 
		
	
		
			
			| 
				
					482
				
			 | 
			
				
			 | 
			
			
				-                        .to("jdbc:centralbase")//.log("${body}") 
			 | 
		
	
		
			
			| 
				
					483
				
			 | 
			
				
			 | 
			
			
				-                        .split(body()).process(exchange -> { 
			 | 
		
	
		
			
			| 
				
					484
				
			 | 
			
				
			 | 
			
			
				-                    Message in = exchange.getIn(); 
			 | 
		
	
		
			
			| 
				
					485
				
			 | 
			
				
			 | 
			
			
				-                    HashMap<String, Object> aRow = in.getBody(HashMap.class); 
			 | 
		
	
		
			
			| 
				
					486
				
			 | 
			
				
			 | 
			
			
				-                    if (aRow.get("stroke_length")!=null && aRow.get("stroke_frequency")!=null){ 
			 | 
		
	
		
			
			| 
				
					487
				
			 | 
			
				
			 | 
			
			
				-                        double stroke_length=Double.parseDouble(aRow.get("stroke_length").toString()); 
			 | 
		
	
		
			
			| 
				
					488
				
			 | 
			
				
			 | 
			
			
				-                        double stroke_frequency=Double.parseDouble(aRow.get("stroke_frequency").toString()); 
			 | 
		
	
		
			
			| 
				
					489
				
			 | 
			
				
			 | 
			
			
				-                        BigDecimal bd=new BigDecimal(stroke_length); 
			 | 
		
	
		
			
			| 
				
					490
				
			 | 
			
				
			 | 
			
			
				-                        double stroke_lengt1=bd.setScale(1,BigDecimal.ROUND_HALF_UP).doubleValue(); 
			 | 
		
	
		
			
			| 
				
					491
				
			 | 
			
				
			 | 
			
			
				-                        BigDecimal bd1=new BigDecimal(stroke_frequency); 
			 | 
		
	
		
			
			| 
				
					492
				
			 | 
			
				
			 | 
			
			
				-                        double stroke_frequency1=bd1.setScale(1,BigDecimal.ROUND_HALF_UP).doubleValue(); 
			 | 
		
	
		
			
			| 
				
					493
				
			 | 
			
				
			 | 
			
			
				-                        aRow.put("strokeLength",stroke_lengt1); 
			 | 
		
	
		
			
			| 
				
					494
				
			 | 
			
				
			 | 
			
			
				-                        aRow.put("strokeFrequency",stroke_frequency1); 
			 | 
		
	
		
			
			| 
				
					495
				
			 | 
			
				
			 | 
			
			
				-                    } 
			 | 
		
	
		
			
			| 
				
					496
				
			 | 
			
				
			 | 
			
			
				-                }) 
			 | 
		
	
		
			
			| 
				
					497
				
			 | 
			
				
			 | 
			
			
				-                        .doTry() 
			 | 
		
	
		
			
			| 
				
					498
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("update centralbase.cb_temp_well_mech_daily set stroke_length='${body[strokeLength]}' ,stroke_frequency ='${body[strokeFrequency]}' where well_id = '${body[well_id]}' and prod_date::date='${header.date}' ")) 
			 | 
		
	
		
			
			| 
				
					499
				
			 | 
			
				
			 | 
			
			
				-                        .to("jdbc:centralbase") 
			 | 
		
	
		
			
			| 
				
					500
				
			 | 
			
				
			 | 
			
			
				-                        .doCatch(Exception.class) 
			 | 
		
	
		
			
			| 
				
					501
				
			 | 
			
				
			 | 
			
			
				-                        .log("${header.date}"+" routeId:centralbase-3->  centralbase.cb_temp_well_mech_daily update data failed") 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					348
				
			 | 
			
			
				+                        .log("${header.date}"+" routeId:update-volDaily-liq_prod_daily ->  centralbase.cb_pc_pro_wellbore_vol_daily update data failed") 
			 | 
		
	
		
			
			| 
				
					502
				
			 | 
			
				
					349
				
			 | 
			
			
				                         .end(); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					350
				
			 | 
			
			
				+            }; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				
					351
				
			 | 
			
			
				+        }; 
			 | 
		
	
		
			
			| 
				
					503
				
			 | 
			
				
					352
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					504
				
			 | 
			
				
			 | 
			
			
				-                from("timer:mytimer11?period=3600000") 
			 | 
		
	
		
			
			| 
				
					505
				
			 | 
			
				
			 | 
			
			
				-                        .routeId("centralbase-1") 
			 | 
		
	
		
			
			| 
				
					506
				
			 | 
			
				
			 | 
			
			
				-                        .setBody(simple("select so.well_id,so.well_common_name,so.org_id,ti.prod_date,ti.stroke_frequency,ti.stroke_length,ti.sgt from centralbase.cb_temp_well_mech_runtime ti, centralbase.cb_cd_well_source so where ti.well_id = so.well_id and ti.prod_date = (select max(prod_date) from centralbase.cb_temp_well_mech_runtime) ")) 
			 | 
		
	
		
			
			| 
				
					507
				
			 | 
			
				
			 | 
			
			
				-                        .to("jdbc:centralbase").process(exchange -> { 
			 | 
		
	
		
			
			| 
				
					508
				
			 | 
			
				
			 | 
			
			
				-                            sendMsgRunTime=0; 
			 | 
		
	
		
			
			| 
				
					509
				
			 | 
			
				
			 | 
			
			
				-                            DefaultMsgSendSuccessCallBack.count.set(0); 
			 | 
		
	
		
			
			| 
				
					510
				
			 | 
			
				
			 | 
			
			
				-                        }) 
			 | 
		
	
		
			
			| 
				
					511
				
			 | 
			
				
			 | 
			
			
				-                        .split(body()) 
			 | 
		
	
		
			
			| 
				
					512
				
			 | 
			
				
			 | 
			
			
				-                        .doTry() 
			 | 
		
	
		
			
			| 
				
					513
				
			 | 
			
				
			 | 
			
			
				-                        .process(exchange -> { 
			 | 
		
	
		
			
			| 
				
					514
				
			 | 
			
				
			 | 
			
			
				-                            Message in = exchange.getIn(); 
			 | 
		
	
		
			
			| 
				
					515
				
			 | 
			
				
			 | 
			
			
				-                            HashMap<String, Object> aRow = in.getBody(HashMap.class); 
			 | 
		
	
		
			
			| 
				
					516
				
			 | 
			
				
			 | 
			
			
				-                            String wellName =aRow.get("well_common_name").toString(); 
			 | 
		
	
		
			
			| 
				
					517
				
			 | 
			
				
			 | 
			
			
				-                            String wellId =aRow.get("well_id").toString(); 
			 | 
		
	
		
			
			| 
				
					518
				
			 | 
			
				
			 | 
			
			
				-                            String orgId = aRow.get("org_id").toString(); 
			 | 
		
	
		
			
			| 
				
					519
				
			 | 
			
				
			 | 
			
			
				-                            String prodDate = aRow.get("prod_date").toString().substring(0,19); 
			 | 
		
	
		
			
			| 
				
					520
				
			 | 
			
				
			 | 
			
			
				-                            Double strokeLength = Double.valueOf(aRow.get("stroke_length").toString()); 
			 | 
		
	
		
			
			| 
				
					521
				
			 | 
			
				
			 | 
			
			
				-                            Double strokeFrequency = Double.valueOf(aRow.get("stroke_frequency").toString()); 
			 | 
		
	
		
			
			| 
				
					522
				
			 | 
			
				
			 | 
			
			
				-                            String sgt = aRow.get("sgt").toString(); 
			 | 
		
	
		
			
			| 
				
					523
				
			 | 
			
				
			 | 
			
			
				-                            if (sgt == null || sgt.length() ==0){ 
			 | 
		
	
		
			
			| 
				
					524
				
			 | 
			
				
			 | 
			
			
				-                                sgt = "0,0"; 
			 | 
		
	
		
			
			| 
				
					525
				
			 | 
			
				
			 | 
			
			
				-                            } 
			 | 
		
	
		
			
			| 
				
					526
				
			 | 
			
				
			 | 
			
			
				-                            DiagnoseMsg diagnoseMsg = new DiagnoseMsg(wellId, wellName, orgId, prodDate, sgt, LocalDateTime.now().toString(), strokeLength, strokeFrequency); 
			 | 
		
	
		
			
			| 
				
					527
				
			 | 
			
				
			 | 
			
			
				-                            sendMsgRunTime++; 
			 | 
		
	
		
			
			| 
				
					528
				
			 | 
			
				
			 | 
			
			
				-                            System.out.println("sendMsgRunTime = " + sendMsgRunTime); 
			 | 
		
	
		
			
			| 
				
					529
				
			 | 
			
				
			 | 
			
			
				-                            producer.send(diagnoseMsg); 
			 | 
		
	
		
			
			| 
				
					530
				
			 | 
			
				
			 | 
			
			
				-                        }) 
			 | 
		
	
		
			
			| 
				
					531
				
			 | 
			
				
			 | 
			
			
				-                        .doCatch(Exception.class) 
			 | 
		
	
		
			
			| 
				
					532
				
			 | 
			
				
			 | 
			
			
				-                        .log("${header.date}"+" rocketMQ send data failed") 
			 | 
		
	
		
			
			| 
				
					533
				
			 | 
			
				
			 | 
			
			
				-                        .end(); 
			 | 
		
	
		
			
			| 
				
					534
				
			 | 
			
				
					353
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					535
				
			 | 
			
				
					354
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					536
				
			 | 
			
				
			 | 
			
			
				-            }; 
			 | 
		
	
		
			
			| 
				
					537
				
			 | 
			
				
			 | 
			
			
				-        }; 
			 | 
		
	
		
			
			| 
				
					538
				
			 | 
			
				
					355
				
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
					539
				
			 | 
			
				
					356
				
			 | 
			
			
				     } 
			 | 
		
	
		
			
			| 
				
					540
				
			 | 
			
				
					357
				
			 | 
			
			
				 } 
			 |