|
|
@@ -27,7 +27,7 @@ public class DataTeam {
|
|
|
QuerySQL querySQL = SQLFactory.createQuerySQL(controller, "sys_datateam");
|
|
|
querySQL.setTableAlias("t1");
|
|
|
querySQL.addJoinTable(BaseClass.JOINTYPE.left, "sys_hr", "t2", "t2.userid=t1.userid and t2.siteid=t1.siteid",
|
|
|
- "departmentid");
|
|
|
+ "departmentid","hrid");
|
|
|
querySQL.addJoinTable(BaseClass.JOINTYPE.left, "sys_users", "t3", "t3.userid=t1.userid",
|
|
|
"phonenumber");
|
|
|
querySQL.addJoinTable(BaseClass.JOINTYPE.left, "sys_department", "t4", "t4.departmentid=t2.departmentid and t4.siteid=t2.siteid",
|
|
|
@@ -38,11 +38,13 @@ public class DataTeam {
|
|
|
querySQL.setWhere("t1.ownerid='" + ownerid + "'");
|
|
|
querySQL.setOrderBy("t1.isleader desc,t1.sys_datateamid");
|
|
|
Rows rows = querySQL.query();
|
|
|
-// Rows rows = controller.dbConnect.runSqlQuery("select t1.*,t2.phonenumber from sys_datateam t1
|
|
|
-// left join sys_users t2 on t1.userid=t2.userid where t1.siteid='" + controller.siteid + "' and t1.ownertable='" + ownertable + "' and t1.ownerid='" + ownerid + "' order by t1.isleader desc,t1.sys_datateamid");
|
|
|
+ RowsMap areaRowsMap =controller.dbConnect.runSqlQuery(" SELECT DISTINCT t2.areaname,t1.hrid from sa_salearea_hr t1 " +
|
|
|
+ " INNER JOIN sa_salearea t2 ON t2.sa_saleareaid=t1.sa_saleareaid " +
|
|
|
+ " WHERE t1.siteid='"+controller.siteid+"'").toRowsMap("hrid");
|
|
|
for (Row row : rows) {
|
|
|
row.put("headpic", controller.getHeadPic(row.getLong("userid")));
|
|
|
-// row.put("username", controller.getUser(row.getLong("userid")).getString("name"));
|
|
|
+ Rows areaRows = areaRowsMap.getOrDefault(row.getString("hrid"), new Rows());
|
|
|
+ row.put("areanames", StringUtils.join(areaRows.toArrayList("areaname"), ","));
|
|
|
}
|
|
|
return rows.toRowsMap("sys_enterpriseid");
|
|
|
}
|
|
|
@@ -151,7 +153,7 @@ public class DataTeam {
|
|
|
QuerySQL querySQL = SQLFactory.createQuerySQL(controller, "sys_datateam");
|
|
|
querySQL.setTableAlias("t1");
|
|
|
querySQL.addJoinTable(BaseClass.JOINTYPE.left, "sys_hr", "t2", "t2.userid=t1.userid and t2.siteid=t1.siteid",
|
|
|
- "departmentid");
|
|
|
+ "departmentid","hrid");
|
|
|
querySQL.addJoinTable(BaseClass.JOINTYPE.left, "sys_users", "t3", "t3.userid=t1.userid",
|
|
|
"phonenumber");
|
|
|
querySQL.addJoinTable(BaseClass.JOINTYPE.left, "sys_department", "t4", "t4.departmentid=t2.departmentid and t4.siteid=t2.siteid",
|
|
|
@@ -162,9 +164,15 @@ public class DataTeam {
|
|
|
querySQL.setWhere("t1.isleader='1'");
|
|
|
querySQL.setWhere("t1.sys_enterpriseid='" + sys_enterpriseid + "'");
|
|
|
Rows rows = querySQL.query();
|
|
|
+
|
|
|
+ RowsMap areaRowsMap =controller.dbConnect.runSqlQuery(" SELECT DISTINCT t2.areaname,t1.hrid from sa_salearea_hr t1 " +
|
|
|
+ " INNER JOIN sa_salearea t2 ON t2.sa_saleareaid=t1.sa_saleareaid " +
|
|
|
+ " WHERE t1.siteid='"+controller.siteid+"'").toRowsMap("hrid");
|
|
|
//Rows rows = controller.dbConnect.runSqlQuery("select * from sys_datateam where siteid='" + controller.siteid + "' and ownertable='" + ownertable + "' and ownerid='" + ownerid + "' and isleader=1 and sys_enterpriseid=" + sys_enterpriseid);
|
|
|
for (Row row : rows) {
|
|
|
row.put("headpic", controller.getHeadPic(row.getLong("userid")));
|
|
|
+ Rows areaRows = areaRowsMap.getOrDefault(row.getString("hrid"), new Rows());
|
|
|
+ row.put("areanames", StringUtils.join(areaRows.toArrayList("areaname"), ","));
|
|
|
}
|
|
|
return rows;
|
|
|
}
|