📄 treedaoimpl.java
字号:
List ltk = this.session.createQuery(hqlk).list();
for (int k = 0; k < ltk.size(); k++) {
Department deptk = (Department) ltk.get(k);
TreeNodeChecked nodek = new TreeNodeChecked(
"DepartmentLocate", deptk.getName(), deptk
.getId()
+ "", false, false);
phql = "FROM Membership WHERE group.id = "
+ deptk.getId();
ltu = this.session.createQuery(phql).list();
for (int s = 0; s < ltu.size(); s++) {
ms = (Membership) ltu.get(s);
userp = ms.getUser();
TreeNodeChecked userB = new TreeNodeChecked(
"DepartmentLocate", userp
.getLocalName(), userp.getId()
+ "", false, false);
nodek.getChildren().add(userB);
}
hqlp = "FROM Department WHERE parent.id = "
+ deptk.getId();
List ltp = this.session.createQuery(hqlp).list();
for (int p = 0; p < ltp.size(); p++) {
Department deptp = (Department) ltp.get(p);
TreeNodeChecked nodep = new TreeNodeChecked(
"DepartmentLocate", deptp.getName(),
deptp.getId() + "", false, false);
phql = "FROM Membership WHERE group.id = "
+ deptp.getId();
ltu = this.session.createQuery(phql).list();
for (int s = 0; s < ltu.size(); s++) {
ms = (Membership) ltu.get(s);
userp = ms.getUser();
TreeNodeChecked userB = new TreeNodeChecked(
"DepartmentLocate", userp
.getLocalName(), userp
.getId()
+ "", false, false);
nodep.getChildren().add(userB);
}
hqlq = "FROM Department WHERE parent.id = "
+ deptp.getId();
List ltq = this.session.createQuery(hqlq)
.list();
for (int q = 0; q < ltq.size(); q++) {
Department deptq = (Department) ltq.get(q);
TreeNodeChecked nodeq = new TreeNodeChecked(
"DepartmentLocate",
deptq.getName(),
deptq.getId() + "", false, false);
phql = "FROM Membership WHERE group.id = "
+ deptq.getId();
ltu = this.session.createQuery(phql).list();
for (int s = 0; s < ltu.size(); s++) {
ms = (Membership) ltu.get(s);
userp = ms.getUser();
TreeNodeChecked userB = new TreeNodeChecked(
"DepartmentLocate", userp
.getLocalName(), userp
.getId()
+ "", false, true);
nodeq.getChildren().add(userB);
}
nodep.getChildren().add(nodeq);
}
nodek.getChildren().add(nodep);
}
noden.getChildren().add(nodek);
}
nodem.getChildren().add(noden);
}
nodej.getChildren().add(nodem);
}
treeData.getChildren().add(nodej);
}
}
return treeData;
}
public TreeNode getQuestionBySubject() {
String hql = " select G.*,level as Level_ \r\n"
+ " from (select id_, class_,parent_,name_,localname_,sort_,status_,type_ \r\n"
+ " from jot_id_group \r\n"
+ " where id_ != parent_ \r\n"
+ " ) G \r\n "
+ " start with parent_= -4 \r\n"
+ " connect by prior id_=parent_ ";
if (this.session == null) {
this.setSession(HibernateSessionFactory.getSession());
}
TreeNode treeData = new TreeNodeBase("Office", "系统功能", "2200",
false);
List lt = this.session.createSQLQuery(hql).addEntity(
DepartmentTree.class).list();
DepartmentTree[] department = new DepartmentTree[lt.size()];
String type = null;
if (lt.size() > 0) {
int root = 0;
int[] position = new int[lt.size()];
position[0] = 0;
TreeNode[] tree = new TreeNode[lt.size()];
for (int i = 0; i < lt.size(); i++) {
department[i] = (DepartmentTree) lt.get(i);
tree[i] = new TreeNodeBase(
((department[i].getLevel() == 1) ? "Office" : "Locate"),
department[i].getLocalName(), department[i].getId()
+ "", false);
if (i > 0) {
if (department[i].getLevel().equals(
department[0].getLevel())) {
root++;
position[root] = i;
}
}
}
if (root > 0) {
for (int i = 0; i < department.length; i++) {
for (int j = 0; j < department.length; j++) {
if (department[j].getParent().equals(
department[i].getId())) {
tree[i].getChildren().add(tree[j]);
}
}
}
for (int i = 0; i < root + 1; i++) {
treeData.getChildren().add(tree[position[i]]);
}
return treeData;
} else {
tree[0] = new TreeNodeBase("Office", department[0]
.getLocalName(), department[0].getId() + "", false);
for (int i = 0; i < department.length; i++) {
for (int j = i + 1; j < department.length; j++) {
if (department[j].getParent().equals(
department[i].getId())) {
tree[i].getChildren().add(tree[j]);
}
}
}
return tree[0];
}
}
return null;
}
// 按题型生成树
public TreeNode getQuestionByType() {
String hql = " Select T.* \r\n"
+ " From ( select G.*,level as Level_ \r\n"
+ " from (select id_, class_,parent_,name_,localname_,sort_,status_,type_ \r\n"
+ " from jot_id_group \r\n"
+ " where id_ != parent_ \r\n"
+ " ) G \r\n"
+ " start with parent_= -5 \r\n"
+ " connect by prior id_=parent_) T \r\n";
if (this.session == null) {
this.setSession(HibernateSessionFactory.getSession());
}
TreeNode treeData = new TreeNodeBase("Office", "题型", "-5", false);
List lt = this.session.createSQLQuery(hql).addEntity(
DepartmentTree.class).list();
DepartmentTree[] department = new DepartmentTree[lt.size()];
String type = null;
if (lt.size() > 0) {
int root = 0;
int[] position = new int[lt.size()];
position[0] = 0;
TreeNode[] tree = new TreeNode[lt.size()];
for (int i = 0; i < lt.size(); i++) {
department[i] = (DepartmentTree) lt.get(i);
tree[i] = new TreeNodeBase(
((department[i].getLevel() == 1) ? "Office" : "Locate"),
department[i].getLocalName(), department[i].getId()
+ "", false);
if (i > 0) {
if (department[i].getLevel().equals(
department[0].getLevel())) {
root++;
position[root] = i;
}
}
}
if (root > 0) {
for (int i = 0; i < department.length; i++) {
for (int j = 0; j < department.length; j++) {
if (department[j].getParent().equals(
department[i].getId())) {
tree[i].getChildren().add(tree[j]);
}
}
}
for (int i = 0; i < root + 1; i++) {
treeData.getChildren().add(tree[position[i]]);
}
return treeData;
} else {
tree[0] = new TreeNodeBase("Office", department[0]
.getLocalName(), department[0].getId() + "", false);
for (int i = 0; i < department.length; i++) {
for (int j = i + 1; j < department.length; j++) {
if (department[j].getParent().equals(
department[i].getId())) {
tree[i].getChildren().add(tree[j]);
}
}
}
return tree[0];
}
}
return null;
}
public TreeNode getPaperTree() {
String hql = " select G.*,level as Level_ \r\n"
+ " from (select id_, class_,parent_,name_,localname_,sort_,status_,type_ \r\n"
+ " from jot_id_group \r\n"
+ " where id_ != parent_ \r\n"
+ " ) G \r\n "
+ " start with parent_= 2200 \r\n"
+ " connect by prior id_=parent_";
if (this.session == null) {
this.setSession(HibernateSessionFactory.getSession());
}
TreeNode treeData = new TreeNodeBase("Office", "考试管理", "-2", false);
List lt = this.session.createSQLQuery(hql).addEntity(
DepartmentTree.class).list();
DepartmentTree[] department = new DepartmentTree[lt.size()];
String type = null;
if (lt.size() > 0) {
int root = 0;
int[] position = new int[lt.size()];
position[0] = 0;
TreeNode[] tree = new TreeNode[lt.size()];
for (int i = 0; i < lt.size(); i++) {
department[i] = (DepartmentTree) lt.get(i);
tree[i] = new TreeNodeBase(
((department[i].getLevel() == 1) ? "Office" : "Locate"),
department[i].getLocalName(), department[i].getId()
+ "", false);
if (i > 0) {
if (department[i].getLevel().equals(
department[0].getLevel())) {
root++;
position[root] = i;
}
}
}
if (root > 0) {
for (int i = 0; i < department.length; i++) {
for (int j = 0; j < department.length; j++) {
if (department[j].getParent().equals(
department[i].getId())) {
tree[i].getChildren().add(tree[j]);
}
}
}
for (int i = 0; i < root + 1; i++) {
treeData.getChildren().add(tree[position[i]]);
}
return treeData;
} else {
tree[0] = new TreeNodeBase("office", department[0]
.getLocalName(), department[0].getId() + "", false);
for (int i = 0; i < department.length; i++) {
for (int j = i + 1; j < department.length; j++) {
if (department[j].getParent().equals(
department[i].getId())) {
tree[i].getChildren().add(tree[j]);
}
}
}
return tree[0];
}
}
return null;
}
public TreeNodeChecked getDepartmentAndUserTree(Long mid, User user) {
String hql = "FROM Permissions WHERE entity = " + user.getId() + " AND name =" + mid;
List lt = this.session.createQuery(hql).list();
Permissions permissions = new Permissions();
if(lt.size()>0){
permissions = (Permissions)lt.get(0);
permissions.setType(","+permissions.getType()+",");
}
hql = "select * from jot_view_DepartmentUser_Level";
if (this.session == null) {
this.setSession(HibernateSessionFactory.getSession());
}
this.session.clear();
TreeNodeChecked treeData = new TreeNodeChecked("DepartmentOffice",
"部门人员管理", "2001", false);
lt = this.session.createSQLQuery(hql).addEntity(
DepartmentTree.class).list();
DepartmentTree[] department = new DepartmentTree[lt.size()];
if (lt.size() > 0) {
int root = 0;
int[] position = new int[lt.size()];
position[0] = 0;
TreeNodeChecked[] tree = new TreeNodeChecked[lt.size()];
for (int i = 0; i < lt.size(); i++) {
department[i] = (DepartmentTree) lt.get(i);
if (department[i].get_class().equals("U")) {
hql = "FROM Permissions WHERE entity = "+department[i].getId() + " AND name = 11";
List pl = this.session.createQuery(hql).list();
Permissions pp = new Permissions();
if(pl.size()>0){
pp = (Permissions)pl.get(0);
}
tree[i] = new TreeNodeChecked("DepartmentUser",
department[i].getLocalName(), department[i].getId()+"",
(permissions.getType().indexOf(","+department[i].getId()+",")!=-1) ,false);
} else {
tree[i] = new TreeNodeChecked("DepartmentLocate",
department[i].getLocalName(), department[i].getId()
+ "", false);
}
if (i > 0) {
if (department[i].getLevel().equals(
department[0].getLevel())) {
root++;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -