package com.matrix.system.hive.service.imp; import com.matrix.core.pojo.PaginationVO; import com.matrix.core.tools.DateUtil; import com.matrix.system.hive.bean.SysWorktime; import com.matrix.system.hive.dao.SysWorktimeDao; import com.matrix.system.hive.service.SysWorktimeService; import org.springframework.stereotype.Service; import org.springframework.beans.factory.annotation.Autowired; import java.util.Date; import java.util.List; /** * @date 2016-08-23 17:50 */ @Service("sysWorktimeService") public class SysWorktimeServiceImpl implements SysWorktimeService { @Autowired private SysWorktimeDao sysWorktimeDao; @Override public int add(SysWorktime sysWorktime) { return sysWorktimeDao.insert(sysWorktime); } @Override public int modify(SysWorktime sysWorktime) { return sysWorktimeDao.update(sysWorktime); } @Override public int remove(List list) { return sysWorktimeDao.deleteByIds(list); } @Override public int removeById(Long id) { return sysWorktimeDao.deleteById(id); } @Override public List findInPage(SysWorktime sysWorktime, PaginationVO pageVo) { return sysWorktimeDao.selectInPage(sysWorktime, pageVo); } @Override public List findByModel(SysWorktime sysWorktime) { return sysWorktimeDao.selectByModel(sysWorktime); } @Override public int findTotal(SysWorktime sysWorktime) { return sysWorktimeDao.selectTotalRecord(sysWorktime); } @Override public SysWorktime findById(Long id) { return sysWorktimeDao.selectById(id); } @Override public List findWorkTimeByshopId(Long shopId) { List sysWorktimes = sysWorktimeDao.findShopId(shopId); return sysWorktimes; } @Override public Date findMaxTime(Long shopId) { return sysWorktimeDao.selectMaxTime(shopId); } @Override public Date findMinTime(Long shopId) { return sysWorktimeDao.selectMinTime(shopId); } @Override public boolean isInWorkTime(Long shopId, Date beginTime, Date endTime) { if(beginTime!=null){ Date minTime = findMinTime(shopId); if(minTime!=null){ Date maxTime = findMaxTime(shopId); minTime.setYear(beginTime.getYear()); minTime.setMonth(beginTime.getMonth()); minTime.setDate(beginTime.getDate()); maxTime.setYear(beginTime.getYear()); maxTime.setMonth(beginTime.getMonth()); maxTime.setDate(beginTime.getDate()); return ( (DateUtil.isDuringDate(minTime, maxTime, beginTime) || minTime.getTime()==beginTime.getTime() ) && DateUtil.isDuringDate(minTime, maxTime, endTime) || maxTime.getTime()==endTime.getTime() ); }else { return false; } }else{ return false; } } }