package com.sp2p.service; import java.sql.Connection; import java.sql.SQLException; import java.util.List; import java.util.Map; import com.shove.Convert; import com.shove.base.BaseService; import com.shove.data.DataException; import com.sp2p.constants.IConstants; import com.sp2p.dao.DataApproveDao; /** * houli * @author Administrator * */ public class DataApproveService extends BaseService{ private DataApproveDao dataApproveDao; /** * 查询上传资料信息 * @param userId * @param typeId * @return * @throws SQLException * @throws DataException */ public Map<String,String> querySauthId(Long userId,Long typeId) throws SQLException, DataException{ Connection conn = connectionManager.getConnection(); try { return dataApproveDao.querySauthId(conn,userId,typeId,-1,-1); } catch (SQLException e) { e.printStackTrace(); }catch (DataException e) { e.printStackTrace(); } finally { conn.close(); } return null; } /** * 查询认证状态 * @param sauthId * @return * @throws SQLException * @throws DataException */ public Long queryApproveStatus(Long sauthId) throws SQLException, DataException{ Connection conn = connectionManager.getConnection(); Long result = -1L; int count = 0,status ; try { List<Map<String,Object>> lists = dataApproveDao.queryApproveStatus(conn,sauthId,-1,-1); if(lists == null || lists.size() <= 0){ return -1L; }else{ for(Map<String,Object> map : lists){ if(map.get("auditStatus") != null){ status = Convert.strToInt(map.get("auditStatus").toString(), -1); if(status == IConstants.APPROVE_PASS){ count ++; } } } return count == lists.size()?1L:-1L; } } catch (SQLException e) { e.printStackTrace(); }catch (DataException e) { e.printStackTrace(); } finally { conn.close(); } return result; } /** * ----5项基本认证 * @return * @throws SQLException */ public Long queryBaseApproveStatus(Long userId,Long typeId) throws SQLException{ Connection conn = connectionManager.getConnection(); Long result = -1L; int count = 0,status ; long sauthId = -1; try { Map<String,String> mp = dataApproveDao.querySauthId(conn,userId,typeId,-1,-1); if(mp == null || mp.get("id")==null){ return -1L; }else{ sauthId = Convert.strToLong(mp.get("id"),-1L); } List<Map<String,Object>> lists = dataApproveDao.queryApproveStatus(conn,sauthId,-1,-1); if(lists == null || lists.size() <= 0){ return -1L; }else{ for(Map<String,Object> map : lists){ if(map.get("auditStatus") != null){ status = Convert.strToInt(map.get("auditStatus").toString(), -1); if(status == IConstants.APPROVE_PASS){ count ++; } } } return count == lists.size()?1L:-1L; } } catch (SQLException e) { e.printStackTrace(); }catch (DataException e) { e.printStackTrace(); } finally { conn.close(); } return result; } /** * ------个人信息认证 * @param userId * @return * @throws SQLException * @throws DataException */ public Long queryPersonalStatus(Long userId) throws SQLException, DataException{ Connection conn = connectionManager.getConnection(); try { Map<String,String> map = dataApproveDao.queryPersonInfo(conn,userId,-1,-1); if(map == null || map.get("auditStatus")==null){ return -1L; }else{ int auditStatus = Convert.strToInt(map.get("auditStatus"), -1); if(auditStatus < 3){ return -1L; }else{//auditStatus=3 代表审核通过 return 1L; } } } catch (SQLException e) { e.printStackTrace(); }finally { conn.close(); } return -1L; } /** * 工作认证 * @param userId * @return * @throws SQLException * @throws DataException */ public Long queryWorkStatus(Long userId) throws SQLException, DataException{ Connection conn = connectionManager.getConnection(); try { Map<String,String> map = dataApproveDao.queryWorkInfo(conn,userId,-1,-1); if(map == null ){ return -1L; }else{ int auditStatus = Convert.strToInt(map.get("auditStatus"), -1); int directedStatus = Convert.strToInt(map.get("directedStatus"), -1); int otherStatus = Convert.strToInt(map.get("otherStatus"), -1); int moredStatus = Convert.strToInt(map.get("moredStatus"), -1); /** * 工作认证有四个认证模块,只要有一个认证模块不通过,那么该认证就不通过 */ if(auditStatus < 3 || directedStatus<3 ||otherStatus<3 || moredStatus<3 ){ return -1L; }else{//auditStatus=3 代表审核通过 return 1L; } } } catch (SQLException e) { e.printStackTrace(); }finally { conn.close(); } return null; } public DataApproveDao getDataApproveDao() { return dataApproveDao; } public void setDataApproveDao(DataApproveDao dataApproveDao) { this.dataApproveDao = dataApproveDao; } }