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

📄 accesslogimpl.java

📁 电信的网厅的整站代码
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
		
		selectSql.append("select t3.purviewid \"编号\",t1.citycode \"城市编号\",");
		
		if (ExtString.isEmpty(sCityCode) || sCityCode.equals("0590") || sCityCode.equals("-0590")) {
			selectSql.append("decode(t1.cityname,null,'全省',t1.cityname) \"地区\",");
		}
		else if (!ExtString.isEmpty(sCityCode) && !sCityCode.equalsIgnoreCase("0590")) {
			if(ExtString.isEmpty(sAreaCode)) {
				selectSql.append("decode(t1.cityname,null,'全省',t1.cityname) \"地区\",");
			}
			else if(sAreaCode.equals("-1")) {
				selectSql.append("t1.areacode,decode(t1.areaname,null,'全' || t1.cityname,t1.areaname) \"区域\",");
			}
			else {
				selectSql.append("t1.areacode,");
			}
		}
		
		selectSql.append("t3.purviewname \"名称\",");

		/*if (!ExtString.isEmpty(sClientType) && !sClientType.equalsIgnoreCase("A")) {
			selectSql.append("decode(b.usertype,'U','注册帐号','B','大客户','UP','关联的产品登录客户','E','内部员工','0','游客','P','产品登录客户','未知') \"客户类别\",");
		}*/
		selectSql.append("count(1) \"访问量\",round(count(1) / ? * 100, 2) || '%' \"占比情况\" ");
		int sum = getAccessLogSum(_map);
		oParam.add(new Integer(sum));

	}
	
	/**构件查找第四级业务介绍的SQL语句
	 * 
	 * @param _map
	 * @param sql
	 */
	private void buildSQL(Map _map, StringBuffer sql,List oParam) {
		String sPurviewId = (String) _map.get("pid");
		String sCityCode = (String) _map.get("CITYCODE");
		String sAreaCode = (String) _map.get("AREA");
		String sStartTime = (String) _map.get("STARTTIME");
		String sEndTime = (String) _map.get("ENDTIME");
		String sClientType = (String) _map.get("CLIENTTYPE");
		
		sql.append("select t.affaircode \"编号\",t.citycode \"城市编号\",");
		if (ExtString.isEmpty(sCityCode) || sCityCode.equals("0590") || sCityCode.equals("-0590")) {
			sql.append("decode(t.cityname,null,'全省',t.cityname) \"地区\",");
		}
		else if (!ExtString.isEmpty(sCityCode) && !sCityCode.equalsIgnoreCase("0590")) {
			if(ExtString.isEmpty(sAreaCode)) {
				sql.append("decode(t.cityname,null,'全省',t.cityname) \"地区\",");
			}
			else if(sAreaCode.equals("-1")) {
				sql.append("t.areacode,decode(t.areaname,null,'全' || t.cityname,t.areaname) \"区域\",");
			}
			else {
				sql.append("t.areacode,");
			}
		}
		sql.append("t.affairname \"名称\",");

		/*if (!ExtString.isEmpty(sClientType) && !sClientType.equalsIgnoreCase("A")) {
			sql.append("decode(t.usertype,'U','注册帐号','B','大客户','UP','关联的产品登录客户','E','内部员工','0','游客','P','产品登录客户','未知') \"客户类别\",");
		}*/
		sql.append("count(1) \"访问量\",round(count(1) / ? * 100, 2) || '%' \"占比情况\" ");
		int sum = getSum(_map);
		oParam.add(new Integer(sum));
		
		sql.append("from tl_accesslog t where t.purviewcode like ? || '%' ");
		TF_purview tf_purview = new TF_purview(new DacClient(),Long.parseLong(sPurviewId));
		oParam.add(tf_purview.getPurviewcode());
		
		if (!ExtString.isEmpty(sCityCode) && !sCityCode.equals("0590")) {
			if(sCityCode.equals("-0590")) {
				sCityCode = "0590";
			}
			sql.append("and t.citycode = ? ");
			oParam.add(sCityCode);
		}
		
		if (!ExtString.isEmpty(sAreaCode)) {
			sql.append("and t.areacode = ? ");
			oParam.add(sAreaCode);
		}

		if (!ExtString.isEmpty(sStartTime)) {
			sql.append("and ");
			sql.append("to_date(to_char(t.recordtime, 'yyyy-mm-dd'),'yyyy-mm-dd') >= to_date(?,'yyyy-mm-dd') ");
			oParam.add(sStartTime);
		}

		if (!ExtString.isEmpty(sEndTime)) {
			sql.append("and ");
			sql.append("to_date(to_char(t.recordtime, 'yyyy-mm-dd'),'yyyy-mm-dd') <= to_date(?,'yyyy-mm-dd') ");
			oParam.add(sEndTime);
		}
		
		if (!ExtString.isEmpty(sClientType) && !sClientType.equalsIgnoreCase("A")) {
			sql.append("and ");
			sql.append("t.usertype = ? ");
			oParam.add(sClientType);
		}
		
		sql.append("group by t.affaircode,t.citycode,t.cityname,t.affairname");
		
		
		if (!ExtString.isEmpty(sCityCode) && !sCityCode.equalsIgnoreCase("0590") && !ExtString.isEmpty(sAreaCode)) {
			sql.append(",t.areaname,t.areacode ");
		}
		
		if (!ExtString.isEmpty(sClientType) && !sClientType.equalsIgnoreCase("A")) {
			sql.append(",t.usertype ");
		}
		
		sql.append(" order by t.cityname,t.affairname");

		if (!ExtString.isEmpty(sCityCode) && !sCityCode.equalsIgnoreCase("0590") && !ExtString.isEmpty(sAreaCode)) {
			sql.append(",t.areaname,t.areacode");
		}


	}
	
	/**构件查找第四级业务介绍总记录数的SQL语句
	 * 
	 * @param _map
	 * @return
	 */
	private int getSum(Map _map) {
		DacClient db = new DacClient();
		try {
			String sPurviewId = (String) _map.get("pid");
			String sAreaCode = (String) _map.get("AREA");
			String sCityCode = (String) _map.get("CITYCODE");
			String sStartTime = (String) _map.get("STARTTIME");
			String sEndTime = (String) _map.get("ENDTIME");
			String sClientType = (String) _map.get("CLIENTTYPE");
			
			StringBuffer sql = new StringBuffer();
			StringBuffer sql1 = new StringBuffer();
			List oParam = new ArrayList();
			
			sql.append("select count(1) cnt ");
			sql.append("from tl_accesslog t where t.purviewcode like ? || '%' ");
			TF_purview tf_purview = new TF_purview(new DacClient(),Long.parseLong(sPurviewId));
			oParam.add(tf_purview.getPurviewcode());
			
			if (!ExtString.isEmpty(sCityCode) && !sCityCode.equals("0590")) {
				if(sCityCode.equals("-0590")) {
					sCityCode = "0590";
				}
				sql.append("and t.citycode = ? ");
				oParam.add(sCityCode);
			}
			
			if (!ExtString.isEmpty(sAreaCode)) {
				sql.append("and t.areacode = ? ");
				oParam.add(sAreaCode);
			}

			if (!ExtString.isEmpty(sStartTime)) {
				sql.append("and ");
				sql.append("to_date(to_char(t.recordtime, 'yyyy-mm-dd'),'yyyy-mm-dd') >= to_date(?,'yyyy-mm-dd') ");
				oParam.add(sStartTime);
			}

			if (!ExtString.isEmpty(sEndTime)) {
				sql.append("and ");
				sql.append("to_date(to_char(t.recordtime, 'yyyy-mm-dd'),'yyyy-mm-dd') <= to_date(?,'yyyy-mm-dd') ");
				oParam.add(sEndTime);
			}
			
			if (!ExtString.isEmpty(sClientType) && !sClientType.equalsIgnoreCase("A")) {
				sql.append("and ");
				sql.append("t.usertype = ? ");
				oParam.add(sClientType);
			}
			
			sql.append("group by t.affaircode,t.citycode,t.cityname,t.affairname");
			
			
			if (!ExtString.isEmpty(sCityCode) && !sCityCode.equalsIgnoreCase("0590") && !ExtString.isEmpty(sAreaCode)) {
				sql.append(",t.areaname,t.areacode ");
			}
			
			if (!ExtString.isEmpty(sClientType) && !sClientType.equalsIgnoreCase("A")) {
				sql.append(",t.usertype ");
			}
			
			
			sql1.append("select sum(cnt) from(");
			sql1.append(sql).append(")");
			
			Object ap[] = new Object[oParam.size()];
			for (int i = 0; i < ap.length; i++) {
				ap[i] = oParam.get(i);
			}
			
			String sum = db.getStringFromSqlQuery(sql1.toString(), ap);
			//System.out.println("总记数:" + sum);
			return Integer.parseInt(sum);
		} catch (Exception e) {
			FileLogger.getLogger().warn(e.getMessage(), e);
		}
		
		return 0;

	}
	
	public String genHtml(Map _map) {
		DataTable dt = getRptList(_map);
		StringBuffer _sb = new StringBuffer();
		String sCityCode = (String) _map.get("CITYCODE");
		String sAreaCode = (String) _map.get("AREA");
		
		if ( dt != null && dt.getRows().getCount() > 0 ) {
			_sb.append("<table>");
			try {
				com.doone.data.DataColumnCollection dcs = dt.getColumns();
				int colcount = dcs.getCount();
				
				_sb.append("<tr>");
				
				for (int icol = 0;icol<colcount-1;icol++){
					com.doone.data.DataColumn dc = dcs.getDataColumn(icol);
					if (ExtString.isEmpty(sCityCode) || sCityCode.equalsIgnoreCase("0590")) {
						if(icol == 0 || icol == 1) {
							_sb.append("<td class=\"body_td\" align=\"center\" nowrap style=\"display:none;\"><b>");
						}
						else {
							_sb.append("<td class=\"body_td\" align=\"center\" nowrap><b>");
						}
					}
					else {
						if(ExtString.isEmpty(sAreaCode)) {
							if(icol == 0 || icol == 1) {
								_sb.append("<td class=\"body_td\" align=\"center\" nowrap style=\"display:none;\"><b>");
							}
							else {
								_sb.append("<td class=\"body_td\" align=\"center\" nowrap><b>");
							}
						}
						else {
							if(icol == 0 || icol == 1 || icol == 2) {
								_sb.append("<td class=\"body_td\" align=\"center\" nowrap style=\"display:none;\"><b>");
							}
							else {
								_sb.append("<td class=\"body_td\" align=\"center\" nowrap><b>");
							}
						}
					}
					_sb.append(dc.getColumnName());
					_sb.append("</b></TD>");
				}
				
				_sb.append("</tr>");
				
				for(int iresult=0;iresult<dt.getRows().getCount(); iresult++){
					DataRow drresult = dt.getRow(iresult);
					_sb.append("<tr height=\"20\" >");
					for (int icol=0; icol<colcount-1;icol++){
						if (ExtString.isEmpty(sCityCode) || sCityCode.equalsIgnoreCase("0590")) {
							if(icol == 0 || icol == 1) {
								_sb.append("<td class=\"body_td\" align=\"left\" nowrap style=\"display:none;\">");
							}
							else {
								_sb.append("<td class=\"body_td\" align=\"left\" nowrap>");
							}
							if(icol == 3) {
								String pid = drresult.getString(0).trim();
								String cityCode = drresult.getString(1).trim();
								String areaCode = drresult.getString(2).trim();
								_map.put("rePid", pid);
								setLinkJavaScript(_map,cityCode,areaCode,drresult.getString(icol),_sb);
							}
							else if(icol == 5) {
								if(drresult.getString(icol).trim().startsWith(".")) {
									_sb.append(drresult.getString(icol).trim().equals("")?"&nbsp;":"0"+drresult.getString(icol).trim());
								}
								else {
									_sb.append(drresult.getString(icol).trim().equals("")?"&nbsp;":drresult.getString(icol).trim());
								}
							}
							else {
								_sb.append(drresult.getString(icol).trim().equals("")?"&nbsp;":drresult.getString(icol).trim());
							}
							_sb.append("</TD>");
						}
						else {
							if(ExtString.isEmpty(sAreaCode)) {
								if(icol == 0 || icol == 1) {
									_sb.append("<td class=\"body_td\" align=\"left\" nowrap style=\"display:none;\">");
								}
								else {
									_sb.append("<td class=\"body_td\" align=\"left\" nowrap>");
								}
								if(icol == 3) {
									String pid = drresult.getString(0).trim();
									String cityCode = drresult.getString(1).trim();
									String areaCode = drresult.getString(2).trim();
									_map.put("rePid", pid);
									setLinkJavaScript(_map,cityCode,areaCode,drresult.getString(icol),_sb);
								}
								else if(icol == 5) {
									if(drresult.getString(icol).trim().startsWith(".")) {
										_sb.append(drresult.getString(icol).trim().equals("")?"&nbsp;":"0"+drresult.getString(icol).trim());
									}
									else {
										_sb.append(drresult.getString(icol).trim().equals("")?"&nbsp;":drresult.getString(icol).trim());
									}
								}
								else {
									_sb.append(drresult.getString(icol).trim().equals("")?"&nbsp;":drresult.getString(icol).trim());
								}
							}
							else if(sAreaCode.equals("-1")) {
								if(icol == 0 || icol == 1 || icol == 2) {

⌨️ 快捷键说明

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