⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 clientdao.java

📁 电信的网厅的整站代码
💻 JAVA
字号:
package com.doone.fj1w.bbs;

import java.util.LinkedList;
import java.util.Map;

import com.doone.data.DacClient;
import com.doone.data.DataTable;
import com.doone.util.ExtString;
import com.doone.util.FileLogger;
import com.doone.uurm.WebAuth;

public class ClientDAO {
	
	/**
	 * @author qiuzb
	 * @version 2007-04-11
	 * @param map
	 * @return
	 * @throws Exception
	 */
	public static int getConditionResult(Map map,WebAuth auth) throws Exception{
		DacClient dac=null;
		try {
			if(map==null) return 0;
			
			long lBoardId=0L;
			if(map.get("boardId")!=null)
				lBoardId = Long.parseLong((String) map.get("boardId"));
			
			StringBuffer sql = new StringBuffer();
			LinkedList linkList = new LinkedList();	
			sql.append("SELECT COUNT (c.content_id) count FROM tf_content c ");
			sql.append("WHERE c.board_id = ? AND c.up_content_id = 0 ");
			linkList.add(new Long(lBoardId));
			sql.append(parseCondition(map,linkList)); 
			dac=new DacClient();
			DataTable dt=dac.executeQuery(sql.toString(),linkList.toArray());            
			if(dt!=null && dt.getRows().getCount()>0) {            	
				return Integer.parseInt(dt.getRow(0).getString("count"));
			}
			// 获取登录用户信息,以便过滤用户没有权限的栏目内容。            
			if (!auth.IsAuthed()) return -1;
			
			// 获取用户有权限的栏目编号。
			sql = new StringBuffer();
			sql.append(" SELECT count(c.content_id) count ");
			sql.append(" FROM tf_content c,");
			sql.append(" (select distinct v.PURVIEWID infoid");
			sql.append(" from vf_stafforgpurv v");
			sql.append(" connect by prior v.PURVIEWID = v.UPPURVIEWID and v.STAFFID = ?");
			linkList.add(new Long(auth.getUserID()));
			sql.append(" start with v.PURVIEWID = ?) p"); 
			linkList.add(new Long(lBoardId));
			sql.append(" WHERE ");
			sql.append(" c.board_id = p.infoid AND c.up_content_id = 0");
			sql.append(parseCondition(map,linkList)); 
			dt=dac.executeQuery(sql.toString(),linkList.toArray());
			if(dt!=null && dt.getRows().getCount()>0) {            	
				return Integer.parseInt(dt.getRow(0).getString("count"));
			}
		} catch (Exception ex) {
			FileLogger.getLogger().warn(ex.getMessage(), ex);
		}
		
		return 0;
	}
	
	/**
	 * 
	 * @param map
	 * @param startrecord
	 * @param recordnum
	 * @return
	 * @throws Exception
	 */
	public static DataTable getContextResult(Map map,WebAuth auth, int currentPage,int pageSize)throws Exception{
		DacClient dac=null;
		DataTable dt = null;
		try {        	
			if (currentPage < 0 || pageSize < 1) return null;
			if(map==null) return dt;
			
			int startRecord = currentPage * pageSize;
			int endRecord = (currentPage + 1) * pageSize;            
			long lBoardId=0L;
			if(map.get("boardId")!=null)
				lBoardId = Long.parseLong((String) map.get("boardId"));
			// 获取本栏目下的内容。
			LinkedList linkList = new LinkedList();			
			StringBuffer sql = new StringBuffer();
			sql.append("SELECT content_id,");
			sql.append(" up_content_id,");
			sql.append(" board_id,");
			sql.append(" account_id,");
			sql.append(" user_name,");
			sql.append(" create_time,");
			sql.append(" title,");
			sql.append(" tip_order,");
			sql.append(" extract_sign,");
			sql.append(" reply_count,");
			sql.append(" exist_attch,");
			sql.append(" last_reply_time,");
			sql.append(" click_count,");
			sql.append(" reply_user_name,");
			sql.append(" delete_sign,");
			sql.append(" CONTENTTYPE,");
			sql.append(" mood_icon,");
			sql.append(" CONTENT_CODE");
			sql.append(" FROM (SELECT content_id,");
			sql.append(" up_content_id,");
			sql.append(" board_id,");
			sql.append(" account_id,");
			sql.append(" user_name,");
			sql.append(" create_time,");
			sql.append(" title,");
			sql.append(" tip_order,");
			sql.append(" extract_sign,");
			sql.append(" reply_count,");
			sql.append(" last_reply_time,");
			sql.append(" click_count,");
			sql.append(" reply_user_name,");
			sql.append(" delete_sign,");
			sql.append(" mood_icon,");
			sql.append(" CONTENTTYPE,");
			sql.append(" CONTENT_CODE,");
			sql.append(" exist_attch,");
			sql.append(" ROWNUM rn /*+ first_row */");
			sql.append(" FROM (SELECT c.content_id,");
			sql.append(" c.up_content_id,");
			sql.append(" c.board_id,");
			sql.append(" c.account_id,");
			sql.append(" c.user_name,");
			sql.append(" c.create_time,");
			sql.append(" c.title,");
			sql.append(" c.tip_order,");
			sql.append(" c.extract_sign,");
			sql.append(" c.reply_count,");
			sql.append(" c.last_reply_time,");
			sql.append(" c.click_count,");
			sql.append(" c.reply_user_name,");
			sql.append(" c.delete_sign,");
			sql.append(" c.mood_icon,");
			sql.append(" c.CONTENTTYPE,");
			sql.append(" c.CONTENT_CODE,");
			sql.append(" c.exist_attch");
			sql.append(" FROM tf_content c");
//			sql.append(" WHERE CONTENTTYPE ='"+contentType+"' AND");
			sql.append(" WHERE ");
			sql.append(" c.board_id = ? AND c.up_content_id = 0");
			linkList.add(new Long(lBoardId));
			sql.append(parseCondition(map,linkList));           
			sql.append(" ORDER BY c.tip_order DESC, c.last_reply_time DESC,");           
			if(!ExtString.turnStr((String)map.get("SORT")).equals("")) {
				sql.append(" c.CREATE_TIME ");
				sql.append((String)map.get("SORT")+",");
			}  
			sql.append(" c.content_id DESC)");
			sql.append(" WHERE ROWNUM <= ?)");
			sql.append(" WHERE rn > ?");
			linkList.add(new Integer(endRecord));
			linkList.add(new Integer(startRecord)); 
			dac=new DacClient();              
			dt = dac.executeQuery(sql.toString(), linkList.toArray());
			if (dt != null && dt.getRows().getCount() > 0) {            	
				return dt;
			}           
			// 获取登录用户信息,以便过滤用户没有权限的栏目内容。            
			if (!auth.IsAuthed()) return null;
			
			// 获取用户有权限的栏目编号。
			linkList = new LinkedList();	
			sql = new StringBuffer();
			sql.append(" SELECT content_id,");
			sql.append(" up_content_id,");
			sql.append(" board_id,");
			sql.append(" account_id,");
			sql.append(" user_name,");
			sql.append(" create_time,");
			sql.append(" title,");
			sql.append(" tip_order,");
			sql.append(" extract_sign,");
			sql.append(" reply_count,");
			sql.append(" exist_attch,");
			sql.append(" last_reply_time,");
			sql.append(" click_count,");
			sql.append(" reply_user_name,");
			sql.append(" delete_sign,");
			sql.append(" CONTENTTYPE,");
			sql.append(" mood_icon");
			sql.append(" FROM (SELECT content_id,");
			sql.append(" up_content_id,");
			sql.append(" board_id,");
			sql.append(" account_id,");
			sql.append(" user_name,");
			sql.append(" create_time,");
			sql.append(" title,");
			sql.append(" tip_order,");
			sql.append(" extract_sign,");
			sql.append(" reply_count,");
			sql.append(" last_reply_time,");
			sql.append(" click_count,");
			sql.append(" reply_user_name,");
			sql.append(" delete_sign,");
			sql.append(" mood_icon,");
			sql.append(" CONTENTTYPE,");
			sql.append(" exist_attch,");
			sql.append(" ROWNUM rn /*+ first_row */");
			sql.append(" FROM (SELECT c.content_id,");
			sql.append(" c.up_content_id,");
			sql.append(" c.board_id,");
			sql.append(" c.account_id,");
			sql.append(" c.user_name,");
			sql.append(" c.create_time,");
			sql.append(" c.title,");
			sql.append(" c.tip_order,");
			sql.append(" c.extract_sign,");
			sql.append(" c.reply_count,");
			sql.append(" c.last_reply_time,");
			sql.append(" c.click_count,");
			sql.append(" c.reply_user_name,");
			sql.append(" c.delete_sign,");
			sql.append(" c.mood_icon,");
			sql.append(" c.CONTENTTYPE,");
			sql.append(" c.exist_attch");
			sql.append(" FROM tf_content c,");
			sql.append(" (select distinct v.PURVIEWID infoid");
			sql.append(" from vf_stafforgpurv v");
			sql.append(" connect by prior v.PURVIEWID = v.UPPURVIEWID and");
			sql.append(" v.STAFFID = ?");
			linkList.add(new Long(auth.getUserID()));
			sql.append(" start with v.PURVIEWID = ?) p");
			linkList.add(new Long(lBoardId));
			sql.append(" WHERE ");
			sql.append(" c.board_id = p.infoid AND c.up_content_id = 0");
			sql.append(parseCondition(map,linkList));
			sql.append(" ORDER BY c.tip_order DESC, c.last_reply_time DESC,");            
			if(!ExtString.turnStr((String)map.get("SORT")).equals("")) {
				sql.append(" c.CREATE_TIME ");
				sql.append((String)map.get("SORT")+",");
			} 
			sql.append(" c.content_id DESC)");
			sql.append(" WHERE ROWNUM <= ?)");
			sql.append(" WHERE rn > ? ");
			linkList.add(new Integer(endRecord));
			linkList.add(new Integer(startRecord)); 
			dac=new DacClient();            
			dt = dac.executeQuery(sql.toString(), linkList.toArray());
		} catch (Exception ex) {
			FileLogger.getLogger().warn(ex.getMessage(), ex);
			return null;
		}finally {
			dac=null;
		}
		return dt;
	}
	
	
	/**
	 * 解释条件入参.
	 * @param map
	 * @param linkList
	 * LINKMAN,STATE,CITYCODE,VPDNTYPEID,CREATETIME,,FINISHTIME,USERID,STORENAME
	 * @return
	 */
	public static String parseCondition(Map map,LinkedList linkList) {
		try {
			StringBuffer buffer = new StringBuffer();
			
			if(!ExtString.turnStr((String)map.get("TITLE")).equals("")) {
				buffer.append(" and c.TITLE like ? ");
				linkList.add((String)map.get("TITLE")+"%");
			}
			if(!ExtString.turnStr((String)map.get("USERNAME")).equals("")) {
				buffer.append(" and c.USER_NAME like ?");
				linkList.add((String)map.get("USERNAME")+"%");
			}
			if(!ExtString.turnStr((String)map.get("DELETE_SIGN")).equals("")) {
				buffer.append(" and c.DELETE_SIGN = ?");				
				linkList.add((String)map.get("DELETE_SIGN"));
			}
			if(ExtString.turnStr((String)map.get("DELETE_SIGN")).equals("")) {
				buffer.append(" and c.DELETE_SIGN <> 'D' ");
			}
			if(!ExtString.turnStr((String)map.get("CONTENTCODE")).equals("")) {
				buffer.append(" and c.CONTENT_CODE like ?");	
				linkList.add((String)map.get("CONTENTCODE")+"%");
			}
			if(!ExtString.turnStr((String)map.get("CREATETIME")).equals("")) {
				buffer.append(" and c.CREATE_TIME >= to_date(?,'YYYY-MM-DD HH24:MI:SS')");
				linkList.add((String)map.get("CREATETIME"));
			}
			if(!ExtString.turnStr((String)map.get("STARTTIME")).equals("")) {
				buffer.append(" and c.STARTTIME >= to_date(?,'YYYY-MM-DD HH24:MI:SS')");
				linkList.add((String)map.get("STARTTIME"));
			}
			if(!ExtString.turnStr((String)map.get("ENDTIME")).equals("")) {
				buffer.append(" and c.ENDTIME <= to_date(?,'YYYY-MM-DD HH24:MI:SS')");
				linkList.add((String)map.get("ENDTIME"));
			}
			return buffer.toString();
		} catch (Exception ex) {
			FileLogger.getLogger().warn(ex.getMessage(),ex);
		}
		return "";
	}
	
	/**
	 * 取备注编码
	 */
	public static DataTable getContentCode(String purviewCode) {
		DacClient dac = new DacClient();
		try {
			String sql= "select t.* from td_contentcode t where t.purviewcode =?";
			Object[] param =new Object[1];
			param[0] = purviewCode;
			return dac.executeQuery(sql,param);			
		} catch (Exception ex) {			
			FileLogger.getLogger().warn(ex.getMessage(),ex);
			return null;
		}finally {
			dac=null;
		}
	}
	
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -