<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"
	xmlns:tx="http://www.springframework.org/schema/tx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:cache="http://www.springframework.org/schema/cache" xmlns:task="http://www.springframework.org/schema/task"
	xsi:schemaLocation="http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans.xsd
                           http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
                           http://www.springframework.org/schema/tx      http://www.springframework.org/schema/tx/spring-tx-3.1.xsd 
                           http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-3.1.xsd
                           http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd">


	<bean id="patientMarkHospServiceFacade" class="com.lyms.platform.operate.web.facade.PatientMarkHospServiceFacade"></bean>
	<!-- 扫描乐陵视图，更新住院状态信息 -->
	<bean id="synLlHisData" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="patientMarkHospServiceFacade"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="synLlHisData"></property>
		<property name="arguments">
			<list>
				<value>0</value>
				<value>0</value>
			</list>
		</property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>
	<!-- 配置一个触发器 -->
	<bean id="synLlHisDataTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="synLlHisData"></property>
		<property name="cronExpression" value="0 0/10 * * * ?"></property>
	</bean>

	<bean id="genSequenceIdService" class="com.lyms.platform.biz.service.GenSequenceIdService"></bean>
	<!-- 扫描生成的id库 数量不够时自动生成一批数据 -->
	<bean id="autoInsertIdTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="genSequenceIdService"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="autoInsertId"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>
	<!-- 配置一个触发器 -->
	<bean id="autoInsertIdTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="autoInsertIdTask"></property>
		<property name="cronExpression" value="${sequence.schedule.expression}"></property>
	</bean>
	
	<!--<bean id="patientsServiceLocal" class="com.lyms.platform.biz.service.PatientsService"></bean>-->
	
	
	<!--自动分娩任务 -->
	<bean id="autoMatDeliverTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="patientsService"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="autoMatDeliver"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>

	<!--处理产后复查、产后追访数据显示及自动流转追访任务 -->
	<bean id="dandleAutoReachDue" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="patientsService"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="dandleAutoReachDue"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>

	<bean id="delSieveTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="patientsService"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="delSieve"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>
	<bean id="addSieveJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="patientsService"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="addSieveJob"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>


	<!--危急数据-->
	<bean id="crisisJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="qhdfyHisService"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="syncLisReportTimer"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>

	<!-- 配置一个触发器 -->
	<bean id="crisisTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="crisisJob"></property>
		<property name="cronExpression" value="0 0/3 0 * * ?"></property>
	</bean>



	<!-- 秦皇岛医院分娩接口-->
	<bean id="qhdFmTimerWork" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="qhdfyFmService"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="fmTimerWork"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>


	<!-- 德州妇幼医院分娩接口-->
	<bean id="dzfyFmTimerWork" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="dzfyFmService"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="fmTimerWork"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>


	<!-- 秦皇岛医院分娩接口-->
	<bean id="qhdFmHistoryTimerWork" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="qhdfyFmService"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="handleHistorData"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>

	<!-- 配置一个触发器 -->
	<bean id="addSieveJobTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="addSieveJob"></property>
		<property name="cronExpression" value="0 0 4 * * ?"></property>
	</bean>

	<!-- 配置一个触发器 -->
	<bean id="autoMatDeliverTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="autoMatDeliverTask"></property>
		<property name="cronExpression" value="0 0 3 * * ?"></property>
	</bean>

	<!-- 配置一个触发器 -->
	<bean id="dandleAutoReachDueTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="dandleAutoReachDue"></property>
		<property name="cronExpression" value="0 30 2 * * ?"></property>
	</bean>

	<!-- 配置一个触发器 -->
	<bean id="delSieveTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="delSieveTask"></property>
		<property name="cronExpression" value="0 30 3 * * ?"></property>
	</bean>

	<bean id="correctSieveOrder" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="sieveService"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="correctSieveOrder"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>

	<!-- 配置一个触发器 -->
	<bean id="correctSieveOrderTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="correctSieveOrder"></property>
		<property name="cronExpression" value="0 31 4 * * ?"></property>
	</bean>

	<!-- 配置一个触发器  0 0 0/1 * * ?-->
	<bean id="qhdFmTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="qhdFmTimerWork"></property>
		<property name="cronExpression" value="0 0 0/1 * * ?"></property>
	</bean>

	<!-- 配置一个触发器  0 0 1 * * ?-->
	<bean id="qhdFmHistoryTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="qhdFmHistoryTimerWork"></property>
		<property name="cronExpression" value="0 0 1 * * ?"></property>
	</bean>


	<bean id="dzfyFmTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="dzfyFmTimerWork"></property>
		<property name="cronExpression" value="0 0 0/1 * * ?"></property>
	</bean>

	<!-- 配置项目启动后任务就执行一次 -->
	<bean id="rsh_simpleTrigger1" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
		<property name="jobDetail" ref="synLlHisData" />
		<property name="startDelay" value="500" />
		<property name="repeatInterval" value="0" />
		<property name="repeatCount" value="0" />
	</bean>


	<!-- 分娩前20周分娩住院追访配置项目启动后任务就执行一次 -->
	<bean id="firstDandleAutoReachDueTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
		<property name="jobDetail" ref="dandleAutoReachDue" />
		<property name="startDelay" value="500" />
		<property name="repeatInterval" value="0" />
		<property name="repeatCount" value="0" />
	</bean>


	<!-- 孕妇学校定时任务 -->
	<bean id="courseWorker" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="courseFacade"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="handCoureseEndOnline"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>


	<bean id="courseTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="courseWorker"></property>
		<property name="cronExpression" value="0 0/5 * * * ?"></property>
	</bean>


	<!-- 快速测量定时任务 -->
	<bean id="measureDataWorker" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="measureInfoFacade"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="doHistoryMeasureData"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>


	<bean id="measureDataTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="measureDataWorker"></property>
		<property name="cronExpression" value="0 30 12 * * ?"></property>
	</bean>


	<!-- 诸城产检 -->
	<bean id="zcChanJianWorker" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="zcPrenatalService"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="handleWork"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>


	<bean id="zcChanJianTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="zcChanJianWorker"></property>
		<property name="cronExpression" value="0 0 0/1 * * ?"></property>
	</bean>


	<!-- 承德公共卫生接口 -->
	<bean id="cdGongWeiWorker" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="cdGwInterface"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="handleWork"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>


	<bean id="cdGongWeiTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="cdGongWeiWorker"></property>
		<property name="cronExpression" value="0 0 20 * * ?"></property>
	</bean>


	<!-- 血压定时任务 -->
	<bean id="generateBpReport" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="bloodPressureServiceImpl"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="generateBpReport"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>

	<bean id="bpReportTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="generateBpReport"></property>
		<property name="cronExpression" value="0 0 20 * * ?"></property>
	</bean>


	<!-- 秦皇岛天英接口 -->
	<bean id="qhdTyWorker" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="qhdTyInterface"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="handleWork"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>


	<bean id="qhdTyTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="qhdTyWorker"></property>
		<property name="cronExpression" value="0 0 20 * * ?"></property>
	</bean>

	<!-- 产前诊断数据自动流转 -->
	<bean id="diaSieveWorker" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="diagnosisFacaed"></property>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="handleWork"></property>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"></property>
	</bean>


	<bean id="diaSieveTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="diaSieveWorker"></property>
		<property name="cronExpression" value="0 0 21 * * ?"></property>
	</bean>


	<!-- 服务结束任务-->
	<bean id="patientSerivceEndJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="patientServiceFacade"/>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="doServiceEndExcute"/>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"/>
	</bean>

	<bean id="patientSerivceEndJobTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="patientSerivceEndJob"/>
		<property name="cronExpression" value="0 0/2 * * * ?"/>
	</bean>


	<!-- 荣成数据对接-->
	<bean id="rcDataJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="rcGlxtService"/>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="taskWorker"/>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"/>
	</bean>

	<bean id="rcDataJobTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="rcDataJob"/>
		<property name="cronExpression" value="0 0/2 * * * ?"/>
	</bean>


	<!-- 承德新筛接口对接-->
	<bean id="cdBabySieveDataJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 要调用的bean -->
		<property name="targetObject" ref="babySieveFacede"/>
		<!-- 要调用的Method -->
		<property name="targetMethod" value="handWorker"/>
		<!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 -->
		<property name="concurrent" value="false"/>
	</bean>

	<bean id="cdBsDataJobTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="cdBabySieveDataJob"/>
		<property name="cronExpression" value="0 0 20 * * ?"/>
	</bean>


	<!-- 总调度,用于启动定时器 -->
	<bean id="schedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
		<property name="triggers" >
			<list>
				<ref bean="autoMatDeliverTrigger"/>
				<ref bean="delSieveTrigger"/>
				<ref bean="addSieveJobTrigger"/>
				<ref bean="correctSieveOrderTrigger"/>
				<ref bean="autoInsertIdTrigger"/>
				<ref bean="courseTrigger"/>
				<ref bean="measureDataTrigger" />
				<!--处理追访数据-->
				<ref bean="dandleAutoReachDueTrigger"/>
				<!--处理产后复查、产后追访数据显示及自动流转-->
				<ref bean="firstDandleAutoReachDueTrigger" />
				<!--血压报告触发器 -->
				<ref bean="bpReportTrigger" />
				<ref bean="rcDataJobTrigger" />
				<!-- 产前诊断-->
				<!--<ref bean="diaSieveTrigger"/>-->
				<!-- 承德公共卫生接口-->
				<!--<ref bean="cdGongWeiTrigger"/>-->
				<!-- 秦皇岛天英-->
				<!--<ref bean="qhdTyTrigger"/>-->
				<!--乐陵住院系统同步-->
				<!--<ref bean="synLlHisDataTrigger"/>-->
				<!--乐陵住院启动时执行一次-->
				<!--<ref bean="rsh_simpleTrigger1" />-->
				<!--<ref bean="qhdFmTrigger"/>-->
				<!--<ref bean="dzfyFmTrigger"/>-->
				<!--<ref bean="crisisTrigger"/>-->
				<!--<ref bean="qhdFmHistoryTrigger"/>-->
				<!-- 承德新筛接口-->
				<!--<ref bean="cdBsDataJobTrigger"/>-->
				<!--<ref bean="zcChanJianTrigger"/>-->
				<ref bean="patientSerivceEndJobTrigger"/>
			</list>
		</property>
	</bean>
</beans>