package com.mandi.system.service;

import java.util.Map;

import com.mandi.dao.common.ObjectResult;
import com.mandi.dao.common.PageRequest;
import com.mandi.dao.common.PageResult;
import com.mandi.system.persist.Login;
import com.mandi.system.persist.User;

public interface IFdUserService {
	
	/**
	 * 登录
	 * @param username
	 * @param password
	 * @return
	 * @throws Exception
	 */
	public ObjectResult<Login> loginUser(String username,String password,String ipadd)throws Exception;
	
	
	/**
	 * 退出登录
	 * @param login
	 * @return
	 */
	public ObjectResult<Boolean> logout(Login login);
	
	
	
	/**
	 * 修改登录状态
	 * @param username
	 * @param state
	 * @return
	 */
	public ObjectResult<Boolean> saveState(String username,boolean state,Login lg);
	
	
	/**
	 * 用户新增或编辑
	 * @param u
	 * @return
	 * @throws Exception
	 */
	public ObjectResult<User> saveUser(User u,Login lg)throws Exception;
	
	
	/**
	 * 获取用户列表
	 * @param searchword
	 * @param companyNo
	 * @param pr
	 * @return
	 */
	public PageResult<Map<String,Object>> getUserMlist(String searchword,String companyNo,PageRequest pr);
	
	
	/**
	 * 删除用户
	 * @param id
	 * @return
	 * @throws Exception
	 */
	public ObjectResult<Boolean>  delUser(String id,Login lg) throws Exception;
	
	
	
	/**
	 * 获取单个用户
	 * @param id
	 * @return
	 */
	public ObjectResult<User>  getUser(String id);
	
	
	/**
	 * 自己修改密码
	 * @param oldpwd
	 * @param newpwd
	 * @return
	 * @throws Exception
	 */
	public ObjectResult<Boolean> updateUserPwd(String oldpwd,String newpwd,Login lg) throws Exception;
	
	
	
}