SysLoginLogDaoImpl.java 2.15 KB
package com.zteits.sys.dao.impl;

import java.util.Date;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import org.apache.commons.lang3.StringUtils;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.zteits.clouds.api.apibase.constants.DataStatusEnum;
import com.zteits.clouds.api.dto.sys.param.SysLoginLogQueryRequest;
import com.zteits.sys.dao.SysLoginLogDao;
import com.zteits.sys.domain.SysLoginLog;
import com.zteits.sys.domain.SysLoginLogExample;
import com.zteits.sys.domain.SysLoginLogExample.Criteria;
import com.zteits.sys.mapper.SysLoginLogMapper;

@Component
public class SysLoginLogDaoImpl implements SysLoginLogDao{
	@Autowired
	private SysLoginLogMapper loginLogMapper;
	
	@Override
	public Boolean saveLoginLog(SysLoginLog record) {
		if(record==null){
			return false;
		}
		if(record.getCreateDate()==null){
			record.setCreateDate(new Date());
		}
		if(record.getDataState()==null){
			record.setDataState(DataStatusEnum.DATA_STATUS_VALID.value());
		}
		return loginLogMapper.insertSelective(record)>0;
	}

	@Override
	public PageInfo<SysLoginLog> pageQuerySysLoginLog(SysLoginLogQueryRequest request) {
		// 1.设置分页信息
        PageHelper.startPage(request.getBaseRequest().getPageNum(), request.getBaseRequest().getPageSize());
		//2.查询数据
        SysLoginLogExample example = new SysLoginLogExample();
        Criteria sql = example.createCriteria();
        if(!StringUtils.isBlank(request.getLoginCode())){
        	sql.andLoginCodeLike("%"+request.getLoginCode()+"%");
        }
        if(request.getBeginTime()!=null){
        	sql.andCreateDateGreaterThan(request.getBeginTime());
        }
        if(request.getEndTime()!=null){
        	sql.andCreateDateLessThan(request.getEndTime());
        }
        sql.andOrgIdEqualTo(request.getOrgId());
        sql.andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value());
        example.setOrderByClause(" create_date desc");
        List<SysLoginLog> sysLoginLogs = loginLogMapper.selectByExample(example);
        return new PageInfo<SysLoginLog>(sysLoginLogs);
	}

}