package com.kym.service;

import com.github.yulichang.base.MPJBaseService;
import com.kym.common.R;
import com.kym.entity.User;
import com.kym.entity.common.PageBean;
import com.kym.entity.queryParams.CommonQueryParam;
import com.kym.entity.queryParams.WxLoginParams;
import com.kym.entity.vo.CustomUserVo;
import com.kym.entity.vo.UserVo;

import java.time.LocalDate;
import java.util.Map;

/**
 * <p>
 * 用户表 服务类
 * </p>
 *
 * @author skyline
 * @since 2023-06-27
 */
public interface UserService extends MPJBaseService<User> {

    UserVo getMe();

    void updateUser(UserVo userVo);

    PageBean<UserVo> listUserVo(Integer pageNum, Integer pageSize);

    R<?> wxLogin(WxLoginParams params);

    PageBean<CustomUserVo> listCustomUser(CommonQueryParam params);

    Map<String, Integer> countDailyRegister(LocalDate statDay, String... stationId);

    Map<String, Integer> countMonthRegister(LocalDate statDay, String... stationId);
}
