用做定时器做会议定时推送

package org.jeecgframework.web.workflow;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.TimerTask;

import org.jeecgframework.core.common.hibernate.qbc.CriteriaQuery;
import org.jeecgframework.core.util.Yunba3;
import org.jeecgframework.core.util.Yunba4;
import org.jeecgframework.web.system.pojo.base.TSUser;
import org.jeecgframework.web.system.service.SystemService;
import org.jeecgframework.web.workflow.entity.TBMeeting;
import org.jeecgframework.web.workflow.entity.TBMeetingUser;
import org.jeecgframework.web.workflow.entity.TSMessage;
import org.jeecgframework.web.workflow.entity.TSMessageUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class NoticeTimerTask extends TimerTask{
	private TBMeeting meeting;
	private TSUser user;
	private SystemService systemService;
	@Autowired
	public void setSystemService(SystemService systemService) {
		this.systemService = systemService;
	}
	
    public TBMeeting getMeeting() {
		return meeting;
	}

	public void setMeeting(TBMeeting meeting) {
		this.meeting = meeting;
	}

	public TSUser getUser() {
		return user;
	}

	public void setUser(TSUser user) {
		this.user = user;
	}

	//	public NoticeTimerTask(TBMeeting meeting,TSUser user){
//		this.meeting=meeting;
//		this.user=user;
//	}
	@Override
	public void run() {
		// TODO Auto-generated method stub
		SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");//日期格式
		TSMessage message2 = new TSMessage();
		message2.setSender(user);
		message2.setTitle("会议管理");
		message2.setContent("参会提醒");
		message2.setGenerateTime(new Date());
		message2.setBusinessId(meeting.getId());
		systemService.saveOrUpdate(message2);
		CriteriaQuery cq1 = new CriteriaQuery(TBMeetingUser.class);
		cq1.eq("meeting", meeting);
		cq1.eq("result", 0);
		cq1.add();
		List<TBMeetingUser> mulist=systemService.getListByCriteriaQuery(cq1, false);
		if(mulist!=null){
			for(TBMeetingUser mu:mulist){
				if(mu.getState()!=2){//如果没有请假
					TSMessageUser messageUser1 = new TSMessageUser();
					messageUser1.setMessage(message2);
					messageUser1.setReceiver(mu.getParticipator());
					systemService.save(messageUser1);
					try {
						new Yunba3(mu.getParticipator().getUserName(),null,"参会提醒", "会议管理",meeting.getCreator(),dateFormat.format(meeting.getCreateTime()));
						new Yunba4(mu.getParticipator().getUserName(),null,"参会提醒", "会议管理",meeting.getCreator(),dateFormat.format(meeting.getCreateTime()));
					} catch (Exception e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
			    }
			}
		}	
	}
}

public void setTimer(Date date,TBMeeting meeting){
			TSUser user = ResourceUtil.getSessionUserName();
			noticeTimerTask.setMeeting(meeting);
			noticeTimerTask.setUser(user);
			Timer timer=new Timer();
			timer.schedule(noticeTimerTask, date);
		}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值