package com.iformall.mapper;

import com.iformall.common.CommonMapper;
import com.iformall.domain.dto.WxCUserBasicInfoDto;
import com.iformall.domain.po.WxCUserBasicInfo;
import com.iformall.domain.vo.CUserBaseVo;
import com.iformall.domain.vo.UserCountVo;
import com.iformall.domain.vo.WxCUserBasicInfoVo;

import java.util.List;

public interface WxCUserBasicInfoMapper extends CommonMapper<WxCUserBasicInfo, String> {

	long findCountByFilter(WxCUserBasicInfoDto dto);

	List<WxCUserBasicInfo> findListByFilter(WxCUserBasicInfoDto dto);

	List<WxCUserBasicInfo> findList(WxCUserBasicInfo wxCUserBasicInfo);

	void updateScore(WxCUserBasicInfo record);

	void updateNewId(CUserBaseVo record);

	long findCountBySex(WxCUserBasicInfoDto dto);

	long findCountByAge(WxCUserBasicInfoDto dto);

	long findCountByScore(WxCUserBasicInfoDto dto);

	List<WxCUserBasicInfo> findListByScore(WxCUserBasicInfoDto dto);

	List<WxCUserBasicInfo> findBirthdayList(String tenantId, String begin, String end);

	long findCount(WxCUserBasicInfoDto dto);
	List<UserCountVo> findCountHistory(WxCUserBasicInfoDto dto);

	List<WxCUserBasicInfoVo> findVoList(WxCUserBasicInfo wxCUserBasicInfo);

	Integer countVoList(WxCUserBasicInfo wxCUserBasicInfo);


	long findGrowUserCount(WxCUserBasicInfoDto dto);

	long findImportUserCount(WxCUserBasicInfoDto dto);

	void incActRecordById(Long id);

	/**
	 * 查找wx_c_user中不存在的用户
	 * @return
	 */
	List<WxCUserBasicInfo> selectNotCUserList();
}

