public class DeptAction extends BaseAction {
private static final long serialVersionUID = -351326488058658703L;
private String deptTree;
private String deptId;
private String deptParentId;
private String operate;
private Department department;
private DepartmentDAO departmentDAO ;
@Override
public String execute() throws Exception {
StringBuilder jsstr = new StringBuilder("var tree = new WebFXTree('部门');\n");
jsstr.append("tree.action = 'deptEdit.action?operate=insertSub&deptParentId=0';\n");
jsstr.append("tree.target = 'deptEditFrame';\n");
List<Department> depts = departmentDAO.queryAllDept();
for (Department dept : depts) {
jsstr.append("var t").append(dept.getDeptId())
.append(" = new WebFXTreeItem('").append(dept.getDeptName()).append("');\n");
jsstr.append("t").append(dept.getDeptId())
.append(".action = 'deptEdit.action?deptId=").append(dept.getDeptId()).append("';\n");
jsstr.append("t").append(dept.getDeptId())
.append(".target = 'deptEditFrame';\n");
}
for (Department dept : depts) {
if ("0".equals(dept.getParentId())) {
jsstr.append("tree.add(t").append(dept.getDeptId()).append(");\n");
}
else {
jsstr.append("t").append(dept.getParentId()).append(".add(t").append(dept.getDeptId()).append(");\n");
}
}
jsstr.append("document.write(tree);\n");
jsstr.append("tree.expandAll();");
deptTree = jsstr.toString();
return SUCCESS;
}
public String getOneDept() {
operate = StringUtils.isBlank(operate) ? "editView" : operate;
if (StringUtils.isNotBlank(deptId)) {
department = departmentDAO.queryDeptById(deptId);
}
if ("insertSub".equalsIgnoreCase(operate)) {
department = new Department();
department.setParentId(deptParentId);
}
return SUCCESS;
}
public String deptSave() {
if ("insertSub".equalsIgnoreCase(operate)) {
departmentDAO.insertDept(department);
}
else {
departmentDAO.updateDept(department);
}
return SUCCESS;
}
public String deptDelete() {
if (StringUtils.isNotBlank(deptId)) {
departmentDAO.delDeptById(deptId);
}
return SUCCESS;
}
public String selectDept() throws Exception {
StringBuilder jsstr = new StringBuilder("var tree = new WebFXTree('部门');\n");
List<Department> depts = departmentDAO.queryAllDept();
for (Department dept : depts) {
jsstr.append("var t").append(dept.getDeptId())
.append(" = new WebFXTreeItem('").append(dept.getDeptName()).append("');\n");
jsstr.append("t").append(dept.getDeptId())
.append(".action = \"javascript:selectDept('").append(dept.getDeptId())
.append("','").append(dept.getDeptName()).append("')\";\n");
}
for (Department dept : depts) {
if ("0".equals(dept.getParentId())) {
jsstr.append("tree.add(t").append(dept.getDeptId()).append(");\n");
}
else {
jsstr.append("t").append(dept.getParentId()).append(".add(t").append(dept.getDeptId()).append(");\n");
}
}
jsstr.append("document.write(tree);\n");
jsstr.append("tree.expandAll();");
deptTree = jsstr.toString();
return SUCCESS;
}
public String getDeptTree() {
return deptTree;
}
public void setDeptTree(String deptTree) {
this.deptTree = deptTree;
}
public String getDeptId() {
return deptId;
}
public void setDeptId(String deptId) {
this.deptId = deptId;
}
public String getDeptParentId() {
return deptParentId;
}
public void setDeptParentId(String deptParentId) {
this.deptParentId = deptParentId;
}
public String getOperate() {
return operate;
}
public void setOperate(String operate) {
this.operate = operate;
}
public Department getDepartment() {
return department;
}
public void setDepartment(Department department) {
this.department = department;
}
public void setDepartmentDAO(DepartmentDAO departmentDAO) {
this.departmentDAO = departmentDAO;
}
}
<%@ page language="java" pageEncoding="UTF-8"%>
<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>合同管理</title>
<%
response.setHeader("Pragma","No-Cache");
response.setHeader("Cache-Control","No-Cache");
response.setDateHeader("Expires", 0);
%>
<link rel="stylesheet" type="text/css" href="resources/css/xtree.css"></link>
<script type="text/javascript" src="resources/js/xtree.js"></script>
<script type="text/javascript">
${deptTree}
function selectDept(deptId, deptName) {
var obj = new Object();
obj.deptId = deptId;
obj.deptName = deptName;
window.returnValue = obj;
window.close();
}
</script>
</head>
<body>
</body>
</html>