package com.palmnest.service.estateserve;

import com.palmnest.model.InPuchaseUser;
import com.palmnest.service.GenericManager;

import java.util.List;
import java.util.Map;

/**
 * @Author hxt
 * @Description 企业内购模块
 * @Date 2018/12/21 15:24
 **/
public interface NeigouManager extends GenericManager<Object, Long> {

	/**
	 * 根据openId和developId查询企业购用户登录信息
	 *
	 * @param openId
	 * @param developId
	 * @return
	 */
	public InPuchaseUser getPuchaseUser(String openId, String developId, String mobile);

	/**
	 * 根据内购员工信息查询对应企业列表
	 *
	 * @param puchaseUser
	 * @return
	 */
	List<Map<String, Object>> getVirListByUser(InPuchaseUser puchaseUser);

	/**
	 * 内购员工登录
	 *
	 * @param openId
	 * @param developId
	 * @param mobile
	 */
	public void neigouLogin(String openId, String developId, String mobile) throws Exception;

	/**
	 * 清除/退出 企业内购登录记录
	 *
	 * @param openId
	 */
	void quitNeigouLogin(String openId);

	/**
	 * 清除/退出 企业内购登录记录
	 *
	 * @param openId
	 */
	void quitNeigouLogin(String openId, String mobile);

	/**
	 * 根据手机号和企业名称查询企业列表
	 * 带分类排序(A-Z)
	 *
	 * @param userMobile
	 * @param virName
	 * @return
	 */
	List<Map<String, Object>> getCompanyListByMobile(String userMobile, String virName);

	/**
	 * 内购员工登录 新
	 *
	 * @param openId
	 * @param developId
	 * @param mobile
	 */
	public void newNeigouLogin(String openId, String developId, String mobile) throws Exception;

	/**
	 * 根据用户手机号查询用户
	 *
	 * @param userMobile
	 * @return
	 */
	InPuchaseUser getPuchaseUser(String userMobile);
}
