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

📄 departmentsecondlisttag.java

📁 本代码是一个权限管理系统源代码
💻 JAVA
字号:
/**
 * 
 */
package com.seavision.PermissionManage.tag;

import java.util.HashMap;
import java.util.List;

import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;

import com.seavision.PermissionManage.common.BaseTag;
import com.seavision.PermissionManage.components.CompanyManage;
import com.seavision.PermissionManage.components.DepartmentManage;
import com.seavision.PermissionManage.components.UserManage;
import com.seavision.PermissionManage.help.DaoFectory;
import com.seavision.PermissionManage.vo.CompanyVO;
import com.seavision.PermissionManage.vo.DepartmentVO;
import com.seavision.PermissionManage.vo.UserVO;

/**
 * @author qiao rong
 * @date 2007-05-09
 * @param String departmentId
 * @function  部门列表页面点击“查看”,查看某部门下级部门的部门列表tag
 *     根据页面传来的部门Id,得到此部门的下级部门, 循环打印部门列表
 *      
 *  
 */
public class DepartmentSecondListTag extends BaseTag{

	public int doStartTag() throws JspException {
		this.initializeTag("DepartmentSecondListTag"); // 初始化类

		try {
			this.appendMessage("<root>");

			UserVO loguser = (UserVO) this.getAttribute("loginUserBean"); // 得到登陆用户的信息
			String message = (String) this.getAttribute("message"); // 得到request中的message对象
	

			this.removeAttribute("message"); // 删除session中message的信息

			if (this.check(loguser)) { // 判断用户登陆信息是否存在

				message = "您还没有登录或您离开系统时间太久,请重新登录";
				String ResultMsg = "登陆失败";
				// --系统提示信息--
				this.appendMessage("<system>");
				this.appendMessage("<appMessage>");
				this.appendMessage("<message>" + message + "</message>");
				this.appendMessage("<ResultMsg>" + ResultMsg + "</ResultMsg>");
				this.appendMessage("</appMessage>");
				this.appendMessage("</system>");
			} // end if
			else {				
     			
				String departmentId = this.getParameter("departmentId");  //页面传来的部门ID
				
//				CompanyVO companyVO_temp = null;        //公司vo,用于从list中取vo时的暂存	
				DepartmentVO departmentVO_temp = null;        //部门vo,用于从list中取vo时的暂存	
				List list_depart = null;        //用于存放部门信息				
				String d_companyID = null;    //所属公司ID
				String up_departmentId = null;  //上级部门ID,暂存
				String fuZeRenID = null;     //负责人ID,暂存
				UserVO userVO = null;       //用户vo
				CompanyVO  companyVO = null;   //公司vo
				DepartmentVO department_temp = null;  //部门vo
				
				//组件
				DepartmentManage departmentManage = DaoFectory.getDepantManage();
				CompanyManage companyManage = DaoFectory.getCompanyManage();
				UserManage userManage = DaoFectory.getUserManage();
	
				list_depart = departmentManage.getSonOfDepartmentList(departmentId);//得到某部门的下级部门记录
				    //循环打印部门列表
				    this.appendMessage("<orderList>");
					for (int i = 0; i < list_depart.size(); i++) {
						departmentVO_temp = (DepartmentVO) list_depart.get(i);
						this.appendMessage("<order>");
						this.appendMessage("<id>" + (i + 1) + "</id>");   //序号
						this.appendMessage("<departmentName>"
								+ departmentVO_temp.getDepartmentName() + "</departmentName>");//部门名称
						this.appendMessage("<departmentId>"
								+ departmentVO_temp.getDepartmentId() + "</departmentId>");//部门ID
						this.appendMessage("<departmentAuthorityID>"
								+ departmentVO_temp.getDepartmentAuthority() + "</departmentAuthorityID>");  //负责人ID
						//根据负责人ID得到负责人的姓名
						fuZeRenID = String.valueOf(departmentVO_temp.getDepartmentAuthority()) ;
						userVO = userManage.getUser(fuZeRenID);
						this.appendMessage("<departmentAuthority>"
								+ userVO.getUserName() + "</departmentAuthority>");  //负责人
						this.appendMessage("<companyId>"
								+ departmentVO_temp.getCompanyId() + "</companyId>");   //所属公司id
						
						//所属公司						
						d_companyID = String.valueOf(departmentVO_temp.getCompanyId());//得到此部门所属公司的ID
						//根据公司的ID, 取公司的名称 						
						companyVO = companyManage.getCompany(Integer.parseInt(d_companyID));
						this.appendMessage("<companyName>"
								+ companyVO.getCompanyName() + "</companyName>");//上级公司
						
						
						//上级部门						
						up_departmentId = String.valueOf(departmentVO_temp.getDepartmentAuthority());//得到上级部门的ID
						//根据上级部门的ID, 从 部门上下级关系表departmentRelation 中取部门的ID, 并打印
						department_temp = departmentManage.getDepartment(up_departmentId);
						this.appendMessage("<department_p>"
								+ department_temp.getDepartmentName() + "</department_p>");//上级部门
						
						//下级部门,向页面打印一个 隐藏的本部门ID,传给下个页面,点击查看链接,再找这个(本)tag
						this.appendMessage("<department_s>"
								+ departmentVO_temp.getDepartmentId()	+ "</department_s>");//下级公司
						
						
						
						//////////////
						
						//操作及状态
						this.appendMessage("<operateEdit>"
								+ "修改"	+ "</operateEdit>");//修改
						this.appendMessage("<operateDelete>"
								+ "删除"	+ "</operateDelete>");//删除
						String state_temp = String.valueOf(departmentVO_temp.getDepartmentState());//公司的状态标记, 0可用,1不可用
						if(state_temp.equals("0"))
						{	
						    this.appendMessage("<departmentState>"
								       + "正常" + "</departmentState>");//状态 
						}
						else
						{
							this.appendMessage("<departmentState>"
								       + "不正常" + "</departmentState>");//状态 
						}
						
						this.appendMessage("</order>");
					}
					this.appendMessage("</orderList>");

			}//end else	
			this.appendMessage("</root>");

			this.outputMessage();
		} catch (Exception ex) {
			this.outputStandardErrorMessage();
			// ex.printStackTrace();
			print("userlistTag出现异常");

		} // end catch

		return TagSupport.EVAL_BODY_INCLUDE; // 继续计算BODY体
	} // end doStartTag method

	public int doEndTag() throws JspException {
		return EVAL_PAGE;
	}// doEndTag method
}

⌨️ 快捷键说明

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