ApiDaoImpl.java 2.44 KB
package com.zteits.pay.dao.impl;

import java.util.ArrayList;
import java.util.List;

import com.clouds.common.constants.pagequery.PageSizeEnum;
import com.clouds.common.utils.page.PageUtil;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.zteits.clouds.api.apibase.bean.PageBean;
import com.zteits.clouds.api.apibase.constants.DataStatusEnum;
import com.zteits.clouds.api.dto.pay.param.ApiLogRequest;
import com.zteits.pay.domain.TdBApiLogExample;
import com.zteits.pay.domain.TdBApiLogName;
import com.zteits.pay.mapper.smapper.TdBApiLogSMapper;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import com.zteits.clouds.api.dto.pay.ApiListDTO;
import com.zteits.clouds.api.dto.pay.TdBApiDTO;
import com.zteits.pay.dao.ApiDao;
import com.zteits.pay.domain.TdBApi;
import com.zteits.pay.domain.TdBApiLog;
import com.zteits.pay.mapper.TdBApiLogMapper;
import com.zteits.pay.mapper.smapper.TdBApiSMapper;

@Component
public class ApiDaoImpl implements ApiDao {
	
	@Autowired
	private TdBApiSMapper tdBApiSMapper;
	@Autowired
	private TdBApiLogMapper tdBApiLogMapper;
	@Autowired
	private TdBApiLogSMapper tdBApiLogSMapper;
	
	@Override
	public Integer queryApiCount(Integer apiType) {
		return tdBApiSMapper.queryApiCount(apiType);
	}

	@Override
	public Integer queryApiHYCount(Integer apiType) {
		return tdBApiSMapper.queryApiHYCount(apiType);
	}
	
	@Override
	public List<ApiListDTO> queryApiRankingList(Integer apiType) {
		return tdBApiSMapper.queryApiRankingList(apiType);
	}

	@Override
	public List<TdBApiDTO> queryApiList(Integer apiType) {
		List<TdBApiDTO>  apiList = new ArrayList<TdBApiDTO>();
		List<TdBApi> apis = tdBApiSMapper.queryApiList(apiType);
		if(!apis.isEmpty()) {
			for(TdBApi tdBApi : apis) {
				TdBApiDTO tdBApiDTO = new TdBApiDTO();
				BeanUtils.copyProperties(tdBApi, tdBApiDTO);
				apiList.add(tdBApiDTO);
			}
		}
		return apiList;
	}

	@Override
	public PageInfo<TdBApiLogName> queryApiLogForPageBean(ApiLogRequest req) {
		PageUtil.pageSizeValidate(PageSizeEnum.PAGE_SIZE_BASE, req);

		PageHelper.startPage(req.getBaseRequest().getPageNum(), req.getBaseRequest().getPageSize());

		List<TdBApiLogName> list = tdBApiLogSMapper.pageQueryApiLogByCondition(req);

		return new PageInfo(list);
	}

	@Override
	public Integer insertApiLog(TdBApiLog record) {
		return tdBApiLogMapper.insertSelective(record);
	}
}