|
@@ -1886,12 +1886,21 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
data.add(task.get("project_name") == null?"":task.get("project_name").toString());
|
|
|
data.add(task.get("name") != null?task.get("name").toString():"");
|
|
|
if(wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1){
|
|
|
- Optional<User> first = userList.stream().filter(ul -> ul.getId().equals(task.get("executor_id"))).findFirst();
|
|
|
- if(first.isPresent()){
|
|
|
- data.add("$userName="+(first.get().getCorpwxUserid() == null?"":first.get().getCorpwxUserid())+"$");
|
|
|
- }else {
|
|
|
- data.add("");
|
|
|
+ String userName = "";
|
|
|
+ if(task.get("executor_id") != null){
|
|
|
+ String[] executorIds = task.get("executor_id").toString().split(",");
|
|
|
+ for (int i = 0; i < executorIds.length; i++) {
|
|
|
+ String executorId = executorIds[i];
|
|
|
+ Optional<User> first = userList.stream().filter(ul -> ul.getId().equals(executorId)).findFirst();
|
|
|
+ if(first.isPresent()){
|
|
|
+ userName += "$userName="+(first.get().getCorpwxUserid() == null?"":first.get().getCorpwxUserid())+"$";
|
|
|
+ if (i < executorIds.length - 1){
|
|
|
+ userName += ",";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
+ data.add(userName);
|
|
|
}else {
|
|
|
data.add(task.get("executor_name") != null?task.get("executor_name").toString():"");
|
|
|
}
|
|
@@ -4490,18 +4499,30 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //递归获取企业微信所有上级部门字符串,格式:"上级部门/上级部门/部门"
|
|
|
+ //用于报表展示:递归获取企业微信所有上级部门字符串,格式:"上级部门/上级部门/部门"
|
|
|
private String getWxDepartment(Department department) {
|
|
|
String depHierarchy = department.getCorpwxDeptid().toString();
|
|
|
//搜到父部门进行添加
|
|
|
if (department.getCorpwxDeptpid()==null || department.getCorpwxDeptpid()==1) {
|
|
|
return depHierarchy;
|
|
|
}else{
|
|
|
- Department supDep = departmentMapper.selectOne(new QueryWrapper<Department>().eq("corpwx_deptid",department.getCorpwxDeptpid()));
|
|
|
+ Department supDep = departmentMapper.selectOne(new QueryWrapper<Department>().eq("corpwx_deptid",department.getCorpwxDeptpid()).eq("company_id",department.getCompanyId()));
|
|
|
return getWxDepartment(supDep) + "/" + depHierarchy;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ //用于导出:递归获取企业微信所有上级部门字符串,格式:"上级部门/上级部门/部门"
|
|
|
+ private String exportWxDepartment(Department department) {
|
|
|
+ String depHierarchy = "$departmentName="+department.getCorpwxDeptid()+"$";
|
|
|
+ //搜到父部门进行添加
|
|
|
+ if (department.getCorpwxDeptpid()==null || department.getCorpwxDeptpid()==1) {
|
|
|
+ return depHierarchy;
|
|
|
+ }else{
|
|
|
+ Department supDep = departmentMapper.selectOne(new QueryWrapper<Department>().eq("corpwx_deptid", department.getCorpwxDeptpid()).eq("company_id", department.getCompanyId()));
|
|
|
+ return exportWxDepartment(supDep) + "/" + depHierarchy;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public HttpRespMsg exportData(String keyword,
|
|
|
@RequestParam(required = false, defaultValue = "1") Integer searchField,
|
|
@@ -5824,6 +5845,9 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
continue;
|
|
|
}
|
|
|
}
|
|
|
+ if (!map.containsKey("deptName")){
|
|
|
+ map.put("deptName","未分配");
|
|
|
+ }
|
|
|
//计算请假时间
|
|
|
Float leaveSum = 0F;
|
|
|
for (LeaveSheet sheet : leaveSheet) {
|
|
@@ -5912,13 +5936,16 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
for (Department department : deptName) {
|
|
|
if (item.get("deptId").toString().equals(department.getDepartmentId().toString())){
|
|
|
if (wxCorpInfo!=null && wxCorpInfo.getSaasSyncContact()==1){
|
|
|
- item.put("deptName",getWxDepartment(department));
|
|
|
+ item.put("deptName",exportWxDepartment(department));
|
|
|
}else {
|
|
|
item.put("deptName",getSupDepartment(department));
|
|
|
}
|
|
|
continue;
|
|
|
}
|
|
|
}
|
|
|
+ if (!item.containsKey("deptName")){
|
|
|
+ item.put("deptName","未分配");
|
|
|
+ }
|
|
|
//计算请假时间
|
|
|
Float leaveSum = 0F;
|
|
|
for (LeaveSheet sheet : leaveSheet) {
|