ApplicationEvent.java 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. package com.yihu.wlyy.event;
  2. import com.yihu.wlyy.job.*;
  3. import com.yihu.wlyy.job.consult.EvaluateScoreJob;
  4. import com.yihu.wlyy.job.consult.FinishConsultJob;
  5. import com.yihu.wlyy.redis.RedisThread;
  6. import com.yihu.wlyy.util.SystemConf;
  7. import org.slf4j.Logger;
  8. import org.slf4j.LoggerFactory;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.context.ApplicationListener;
  11. import org.springframework.context.event.ContextRefreshedEvent;
  12. import org.springframework.stereotype.Service;
  13. import java.util.HashMap;
  14. /**
  15. * Created by lyr-pc on 2017/3/10.
  16. */
  17. @Service
  18. public class ApplicationEvent implements ApplicationListener<ContextRefreshedEvent> {
  19. private Logger logger = LoggerFactory.getLogger(ApplicationEvent.class);
  20. @Autowired
  21. QuartzHelper quartzHelper;
  22. @Autowired
  23. private RedisThread redisThread;
  24. @Override
  25. public void onApplicationEvent(ContextRefreshedEvent ContextRefreshedEvent) {
  26. try {
  27. // 启动签约到期处理JOB
  28. if (!quartzHelper.isExistJob("sign_end_job")) {
  29. String trigger = SystemConf.getInstance().getSystemProperties().getProperty("sign_end_job_trigger");
  30. quartzHelper.addJob(SignEndJob.class, trigger, "sign_end_job", new HashMap<String, Object>());
  31. logger.info("sign end job start success");
  32. } else {
  33. logger.info("sign end job exist");
  34. }
  35. if (!quartzHelper.isExistJob("evaluate_score_job")) {
  36. String trigger = SystemConf.getInstance().getSystemProperties().getProperty("evaluate_score_job");
  37. quartzHelper.addJob(EvaluateScoreJob.class, trigger, "evaluate_score_job", new HashMap<String, Object>());
  38. logger.info("evaluate_score_job start success");
  39. } else {
  40. logger.info("evaluate_score_job exist");
  41. }
  42. //启动群发续签图文消息
  43. if (!quartzHelper.isExistJob("sign_again_job")) {
  44. String trigger = SystemConf.getInstance().getSystemProperties().getProperty("sign_again_job_trigger");
  45. quartzHelper.addJob(SignAgainJob.class, trigger, "sign_again_job", new HashMap<String, Object>());
  46. logger.info("sign_again_job start success");
  47. } else {
  48. logger.info("sign_again_job exist");
  49. }
  50. //续方支付到期,每天0点触发
  51. if (!quartzHelper.isExistJob("prescription_pay_overdue_job")) {
  52. String trigger = SystemConf.getInstance().getSystemProperties().getProperty("prescription_pay_overdue_job");
  53. quartzHelper.addJob(PrescriptionPayOverdueJob.class, trigger, "prescription_pay_overdue_job", new HashMap<String, Object>());
  54. logger.info("prescription pay overdue job success");
  55. } else {
  56. logger.info("prescription pay overdue job exist");
  57. }
  58. //启动发送产检提醒模板消息
  59. // if (!quartzHelper.isExistJob("prenatal_inspector_job")) {
  60. // String trigger = SystemConf.getInstance().getSystemProperties().getProperty("prenatal_inspector_job_trigger");
  61. // quartzHelper.addJob(PrenatalInspectorJob.class, trigger, "prenatal_inspector_job", new HashMap<String, Object>());
  62. // logger.info("prenatal_inspector_job start success");
  63. // } else {
  64. // logger.info("prenatal_inspector_job exist");
  65. // }
  66. //遍历支付成功,快递下单失败的记录,重新下单,10分钟跑一次
  67. if (!quartzHelper.isExistJob("sfexpress_reorder_job")) {
  68. String trigger = SystemConf.getInstance().getSystemProperties().getProperty("sfexpress_reorder_job");
  69. quartzHelper.addJob(SFExpressJob.class, trigger, "sfexpress_reorder_job", new HashMap<String, Object>());
  70. logger.info("sfexpress reorder job job success");
  71. } else {
  72. logger.info("sfexpress reorder job job exist");
  73. }
  74. //同步智业字典 每晚1点同步
  75. if (!quartzHelper.isExistJob("zy_dict_job")) {
  76. String trigger = SystemConf.getInstance().getSystemProperties().getProperty("zy_dict_job");
  77. quartzHelper.addJob(ZyDictJob.class, trigger, "zy_dict_job", new HashMap<String, Object>());
  78. logger.info("zy_dict_job job success");
  79. } else {
  80. logger.info("zy_dict_job job exist");
  81. }
  82. //遍历支付成功,院内结算失败的的记录,重新结算,10分钟跑一次
  83. if (!quartzHelper.isExistJob("zy_execute_sick_settle_job")) {
  84. String trigger = SystemConf.getInstance().getSystemProperties().getProperty("zy_execute_sick_settle_job");
  85. quartzHelper.addJob(PrescriptionExecuteSickSettleJob.class, trigger, "zy_execute_sick_settle_job", new HashMap<String, Object>());
  86. logger.info("zy_execute_sick_settle_job reorder job job success");
  87. } else {
  88. logger.info("zy_execute_sick_settle_job reorder job job exist");
  89. }
  90. //居民24小时未回复的咨询自动关闭 每小时59分开始执行一次
  91. if (!quartzHelper.isExistJob("finish_consult_job")) {
  92. String trigger = SystemConf.getInstance().getSystemProperties().getProperty("finish_consult_job");
  93. quartzHelper.addJob(FinishConsultJob.class, trigger, "finish_consult_job", new HashMap<String, Object>());
  94. logger.info("finish_consult_job success");
  95. } else {
  96. logger.info("finish_consult_job exist");
  97. }
  98. //提醒有监测方案的居民上传数据,每29分钟执行一次
  99. if (!quartzHelper.isExistJob("doctor_feldsher_template_job")) {
  100. String trigger = SystemConf.getInstance().getSystemProperties().getProperty("doctor_feldsher_template_job");
  101. quartzHelper.addJob(DoctorFeldsherTemplateJob.class, trigger, "doctor_feldsher_template_job", new HashMap<String, Object>());
  102. logger.info("doctor_feldsher_template_job reorder job job success");
  103. } else {
  104. logger.info("doctor_feldsher_template_job reorder job job exist");
  105. }
  106. //慢病患者定标情况同步,每天凌晨2点执行一次
  107. if (!quartzHelper.isExistJob("patient_disease_contion_syn_job")) {
  108. String trigger = SystemConf.getInstance().getSystemProperties().getProperty("patient_disease_contion_syn_job");
  109. quartzHelper.addJob(PatientDiseaseConditionSynJob.class, trigger, "patient_disease_contion_syn_job", new HashMap<String, Object>());
  110. logger.info("patient_disease_contion_syn_job job success");
  111. } else {
  112. logger.info("patient_disease_contion_syn_job job exist");
  113. }
  114. // 启动redis 消息队列线程
  115. logger.info("redis message start");
  116. new Thread(redisThread).start();
  117. logger.info("redis message end");
  118. } catch (Exception e) {
  119. logger.info("sign end job start failed");
  120. }
  121. }
  122. }