package org.linlinjava.jz.service;

import java.util.List;

import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.annotations.Param;
import org.linlinjava.jz.db.dao.HmTaskListMapper;
import org.linlinjava.jz.db.domain.HmButlerTaskParent;
import org.linlinjava.jz.db.domain.HmEmployRelationExample;
import org.linlinjava.jz.db.domain.JzBookOrder;
import org.linlinjava.jz.db.dto.hm.HmTaskListData;
import org.linlinjava.jz.db.util.hm.HmNoticeEnum;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.github.pagehelper.PageHelper;

/**
 * 管家任务列表查询
 * 
 * @author 36952
 *
 */
@Service
public class HmTaskCenterService {

	@Autowired
	HmTaskListMapper hmTaskListMapper;

	@Autowired
	HmButlerTaskParentService butlerTaskParentService;

	/**
	 * 查询我的任务 ，历史任务
	 * 
	 * @param page
	 * @param limit
	 * @param queryStr
	 * @param yaerMonth
	 * @param status    0表示未完成（我的任务）， 2表示完成 （历史任务）
	 * @return
	 */
	public List<HmTaskListData> selectTaskList(String queryStr, String yaerMonth, int status, Long userButlerId) {

//		PageHelper.startPage(page, limit);
		List<String> butlerNoticeType = HmNoticeEnum.getButlerNoticeType();
		String rType = StringUtils.join(butlerNoticeType.toArray(), ',');
		return hmTaskListMapper.selectTaskList(queryStr, yaerMonth, status, userButlerId,rType);
	}

	/**
	 * 查询单个任务列表
	 * @param employRelationId
	 * @return
	 */
	public List<HmTaskListData> selectUserTaskList(int page, int limit,Long employRelationId) {
		PageHelper.startPage(page, limit);
		List<String> butlerNoticeType = HmNoticeEnum.getButlerNoticeType();
		String rType = StringUtils.join(butlerNoticeType.toArray(), ',');
		return hmTaskListMapper.selectUserTaskList(employRelationId,rType);
	}
}
