package com.sp2p.service;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.List;
import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import com.shove.base.BaseService;
import com.shove.data.ConnectionManager;
import com.shove.data.DataException;
import com.shove.data.dao.MySQL;
import com.shove.vo.PageBean;
import com.sp2p.dao.RecommendUserDao;
public class RecommendUserService extends BaseService {
public static Log log = LogFactory.getLog(RecommendUserService.class);
private RecommendUserDao recommendUserDao;
private ConnectionManager connectionManager;
/**
* 添加用户和推荐人关系
* @param conn
* @param userId
* @param recommendUserId
* @return Long
* @throws SQLException
*/
public Long addRecommendUser(long userId,long recommendUserId) throws SQLException{
Connection conn = connectionManager.getConnection();
Long id = -1L;
try {
id = recommendUserDao.addRecommendUser(conn, userId, recommendUserId);
} catch (SQLException e) {
log.error(e);
e.printStackTrace();
throw e;
}finally{
conn.close();
}
return id;
}
/**
* 修改用户和推荐人关系
* @param conn
* @param id
* @param vouchersId
* @return Long
* @throws SQLException
*/
public Long updateRecommendUser(long id,long moneyTypeId) throws SQLException{
Connection conn = connectionManager.getConnection();
Long returnId = -1L;
try {
returnId = recommendUserDao.updateRecommendUser(conn, id,moneyTypeId);
} catch (SQLException e) {
log.error(e);
e.printStackTrace();
throw e;
}finally{
conn.close();
}
return returnId;
}
/**
* 根据条件查询数据
* @param conn
* @param id编号
* @param userId用户编号
* @param recommendUserId推荐人编号
* @param vouchersId礼劵编号
* @return List<Map<String,Object>>
* @throws DataException
* @throws SQLException
*/
public List<Map<String,Object>> queryRecommendUser(Long id,Long userId,Long recommendUserId) throws SQLException, DataException{
Connection conn = connectionManager.getConnection();
List<Map<String, Object>> list =null;
try {
list = recommendUserDao.queryRecommendUser(conn, id, userId, recommendUserId);
} catch (SQLException e) {
log.error(e);
e.printStackTrace();
throw e;
}catch (DataException e) {
log.error(e);
e.printStackTrace();
throw e;
}finally{
conn.close();
}
return list;
}
/**
* 根据邀请人Id查询所有被邀请人
* @param recommendId
* @return
* @throws SQLException
* @throws DataException
*/
public List<Map<String, Object>> findRecommendUserByRecommendId(Long recommendId)throws SQLException,DataException{
Connection conn = connectionManager.getConnection();
List<Map<String, Object>> list=null;
try {
list=recommendUserDao.findRecommendUserByRecommendId(conn, recommendId);
}catch(Exception e){
e.printStackTrace();
}finally{
conn.close();
}
return list;
}
/**
* 分页查询邀请好友列表
* @param recommendId
* @throws SQLException
* @throws DataException
*/
public void queryfindRecommendUserPage(PageBean pageBean,Long recommendId)throws SQLException,DataException{
Connection conn = connectionManager.getConnection();
try {
dataPage(conn, pageBean, "v_t_recommendfriend_list", "*", "", "AND recommendUserId="+recommendId);
} catch (SQLException e) {
log.error(e);
e.printStackTrace();
}catch(DataException e){
log.error(e);
e.printStackTrace();
}finally{
conn.close();
}
}
/**
* 根据用户Id查询邀请人Id
*/
public Map<String, String> getRecommendUserByuserId(Long userId)throws SQLException,DataException{
Connection conn = MySQL.getConnection();
Map<String, String> map=null;
try {
map=recommendUserDao.getRecommendUserByuserId(conn, userId);
conn.commit();
} catch (SQLException e) {
conn.rollback();
log.error(e);
e.printStackTrace();
}catch(DataException e){
conn.rollback();
log.error(e);
e.printStackTrace();
}finally{
conn.close();
}
return map;
}
public RecommendUserDao getRecommendUserDao() {
return recommendUserDao;
}
public void setRecommendUserDao(RecommendUserDao recommendUserDao) {
this.recommendUserDao = recommendUserDao;
}
public ConnectionManager getConnectionManager() {
return connectionManager;
}
public void setConnectionManager(ConnectionManager connectionManager) {
this.connectionManager = connectionManager;
}
}