package com.template.services;

import com.github.pagehelper.PageInfo;
import com.template.model.pojo.SmartUser;
import com.template.model.tongji.*;
import com.template.model.weixin.AccessToken;
import com.template.model.weixin.WechatUserUnionID;
import org.apache.ibatis.annotations.Param;

import java.text.ParseException;
import java.util.List;
import java.util.Map;

/**
 * <p>Title: WechatScanLoginService</p>
 * <p>Description: 业务接口 </p>
 * @author fengyong
 * @date 2018年9月7日
 */
public interface WechatScanLoginService {
	
	Map<String,String> wechatLoginUrl();

	Map<String,String> wechatBindUrl(String phone,String messageCode);
	
	AccessToken getAccessToken(String code);
	
	WechatUserUnionID getUserUnionID();

	SmartUser selectByOpenid(String openid);

	SmartUser selectByCardNo(String CardNo);

	int updateSmartUser(SmartUser sa);

	// 用户类别统计
	public List<Tj> getUserIdTj();

	// 用户总数
	public All getUserIdTjt();

	// 水表总计
	public DAll getWaterTj();

	// 电表总计
	public DAll getElcTj();

	public void insertMonthMeter(String month);

	public void insertDayMeter(String day);

	// 每个月各水表数据
	public List<MonthMeterDetail> getMonWater() throws ParseException;

	// 每个月各电表数据
	public List<MonthMeterDetail> getMonElc() throws ParseException;

	// 区域能耗统计
	public PageInfo<MeterMonthData> getMeterMonthPage(@Param("meterMonthData")MeterMonthData meterMonthData);

	// 实时抄表
	public PageInfo<MeterMonthData> getMeterDayPage(@Param("meterMonthData")MeterMonthData meterMonthData);
}
