📄 departmentsecondlisttag.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 + -