Parcourir la Source

--add ProScoreTaskJobEntry.java;

zzy.zhiyuan.foxmail 8 ans auparavant
Parent
commit
0d149635a4

+ 70 - 0
src/main/java/com/ekexiu/portal/job/ProScoreTaskJobEntry.java

@ -0,0 +1,70 @@
1
package com.ekexiu.portal.job;
2

3
import java.sql.Connection;
4
import java.text.SimpleDateFormat;
5
import java.util.Date;
6

7
import javax.sql.DataSource;
8

9
import org.apache.log4j.Logger;
10
import org.jfw.apt.annotation.Autowrie;
11
import org.jfw.apt.annotation.Bean;
12

13
import com.ekexiu.portal.service.ProfessorService;
14

15
@Bean
16
public class ProScoreTaskJobEntry implements Runnable {
17
	private static Logger logger = Logger.getLogger(ProScoreTaskJobEntry.class);
18
	private String taskTime;
19
	private long delayTime;
20
	@Autowrie("dataSource")
21
	private DataSource dataSource;
22
	@Autowrie
23
	private ProfessorService professorService;
24
	public String getTaskTime() {
25
		return taskTime;
26
	}
27
	public void setTaskTime(String taskTime) {
28
		this.taskTime = taskTime;
29
	}
30
	public long getDelayTime() {
31
		return delayTime;
32
	}
33
	public void setDelayTime(long delayTime) {
34
		this.delayTime = delayTime;
35
	}
36
	public DataSource getDataSource() {
37
		return dataSource;
38
	}
39
	public void setDataSource(DataSource dataSource) {
40
		this.dataSource = dataSource;
41
	}
42
	public ProfessorService getProfessorService() {
43
		return professorService;
44
	}
45
	public void setProfessorService(ProfessorService professorService) {
46
		this.professorService = professorService;
47
	}
48

49
	@Override
50
	public void run() {
51
		try {
52
			Connection con =dataSource.getConnection();
53
			try{
54
				professorService.updateScorePercent(con);
55
                con.commit();
56
                SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
57
                logger.info("执行定时任务,更新用户积分百分比"+df.format(new Date()));
58
            }catch(Exception e){
59
                try{con.rollback();
60
                }catch(Exception e1){e1.printStackTrace();}
61
            }finally{
62
                try{con.close();
63
                }catch(Exception e){e.printStackTrace();} 
64
            }
65
		} catch (Exception e) {
66
			e.printStackTrace();
67
		}
68
	}
69

70
}

+ 6 - 0
src/main/java/com/ekexiu/portal/job/TaskJob.java

@ -22,6 +22,7 @@ public class TaskJob implements AfterBeanFactory {
22 22
	public void handle(BeanFactory bf) throws Throwable {
23 23
	
24 24
		TaskJobEntry tje = (TaskJobEntry) bf.getBean("com_ekexiu_portal_job_TaskJobEntry");
25
		ProScoreTaskJobEntry pstje = (ProScoreTaskJobEntry) bf.getBean("com_ekexiu_portal_job_ProScoreTaskJobEntry");
25 26
//		UserLogTaskJobEntry ultje = (UserLogTaskJobEntry) bf.getBean("com_ekexiu_portal_job_UserLogTaskJobEntry");
26 27
		DictTaskJobEntry dtje =(DictTaskJobEntry) bf.getBean("com_ekexiu_portal_job_DictTaskJobEntry");
27 28
		final WeixinService weixin =(WeixinService)bf.getBean("com_ekexiu_portal_service_WeixinService");
@ -34,6 +35,11 @@ public class TaskJob implements AfterBeanFactory {
34 35
        this.service = JfwAppContext.getScheduledExecutorService();
35 36
        // 第二个参数为首次执行的延时时间,第三个参数为定时执行的间隔时间  
36 37
		service.scheduleAtFixedRate(tje, taskTime, delayTime, TimeUnit.MILLISECONDS);
38
		
39
		long pstjeTask = getTimeMillis(pstje.getTaskTime());
40
		long pstjeTaskTime = pstjeTask - System.currentTimeMillis();
41
		pstjeTaskTime = pstjeTaskTime > 0 ? pstjeTaskTime : pstjeTaskTime + pstje.getDelayTime();
42
		service.scheduleAtFixedRate(pstje, pstjeTaskTime, pstje.getDelayTime(), TimeUnit.MILLISECONDS);
37 43
//		service.scheduleAtFixedRate(ultje, taskTime, delayTime, TimeUnit.MILLISECONDS);
38 44
		service.scheduleAtFixedRate(dtje, 1, dtje.getDelayTime(), TimeUnit.SECONDS);
39 45
		service.scheduleAtFixedRate(new Runnable() {

+ 19 - 0
src/main/java/com/ekexiu/portal/pojo/InviteUserScore.java

@ -0,0 +1,19 @@
1
package com.ekexiu.portal.pojo;
2

3
public class InviteUserScore {
4
	private String inviteUser;
5
	private int score;
6
	public String getInviteUser() {
7
		return inviteUser;
8
	}
9
	public void setInviteUser(String inviteUser) {
10
		this.inviteUser = inviteUser;
11
	}
12
	public int getScore() {
13
		return score;
14
	}
15
	public void setScore(int score) {
16
		this.score = score;
17
	}
18
	
19
}