package com.goafanti.user.service;

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

import com.goafanti.app.bo.UserBasicInfo;
import com.goafanti.common.model.User;
import com.goafanti.user.bo.OrgUnitNames;
import com.goafanti.user.bo.UserBaseBo;
import com.goafanti.user.bo.UserDownLoadBo;
import com.goafanti.user.bo.UserNames;
import com.goafanti.user.bo.UserPageHomeBo;

public interface UserService {

	User selectByPrimaryKey(String userId);

	String selectNumberByPrimaryKey(String userId);

	int updateByPrimaryKeySelective(User u);

	User insert(User user);

	User selectByMobieAndType(String mobile, Integer type);
	
	User selectByNameAndType(String username, Integer type);

	User insertRegister(User user, String unitName, String contacts);

	UserBaseBo selectUserBase(String userId);
	
	UserPageHomeBo selectUserPageHomeBoByUserId(String userId);

	UserDownLoadBo selectUserDownLoadBoByUserId(String userId);

	List<OrgUnitNames> selectDemandUnitNames();

	List<UserNames> selectDemandUserNames();

	Map<String, String> selectAchievementUserOwner(String name);

	List<OrgUnitNames> selectAchievementOrgOwner(String name);

	String findUserNameByNameAndMobile(String name, String mobile);

	String findOrgNameByNameAndMobile(String name, String mobile);

	UserBasicInfo selectBaseInfo();
	
	User selectByNumber(String easemobName);
	
	List<User> selectUserByRoleName(String roleName);
}
