|
|
@ -42,10 +42,7 @@ import javax.servlet.http.HttpServletResponse; |
|
|
|
import java.math.BigDecimal; |
|
|
|
import java.math.BigDecimal; |
|
|
|
import java.text.ParseException; |
|
|
|
import java.text.ParseException; |
|
|
|
import java.text.SimpleDateFormat; |
|
|
|
import java.text.SimpleDateFormat; |
|
|
|
import java.util.Arrays; |
|
|
|
import java.util.*; |
|
|
|
import java.util.Date; |
|
|
|
|
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
import java.util.Optional; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* @Description: 任务管理 |
|
|
|
* @Description: 任务管理 |
|
|
@ -101,17 +98,114 @@ public class TaskController extends JeecgController<Task, ITaskService> { |
|
|
|
@ApiOperation(value = "任务管理-分页列表查询", notes = "任务管理-分页列表查询") |
|
|
|
@ApiOperation(value = "任务管理-分页列表查询", notes = "任务管理-分页列表查询") |
|
|
|
@GetMapping(value = "/list") |
|
|
|
@GetMapping(value = "/list") |
|
|
|
public Result<?> queryPageList(Task task, |
|
|
|
public Result<?> queryPageList(Task task, |
|
|
|
|
|
|
|
@RequestParam(name = "type", required = false) List<String> type, |
|
|
|
|
|
|
|
@RequestParam(name = "userName", defaultValue = "") String userName, |
|
|
|
|
|
|
|
@RequestParam(name = "time", required = false) Integer time, |
|
|
|
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|
|
|
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|
|
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|
|
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|
|
|
HttpServletRequest req) { |
|
|
|
HttpServletRequest req) throws ParseException { |
|
|
|
QueryWrapper<Task> queryWrapper = QueryGenerator.initQueryWrapper(task, req.getParameterMap()); |
|
|
|
QueryWrapper<Task> queryWrapper = new QueryWrapper<>(); |
|
|
|
Page<Task> page = new Page<Task>(pageNo, pageSize); |
|
|
|
Page<Task> page = new Page<Task>(pageNo, pageSize); |
|
|
|
|
|
|
|
|
|
|
|
LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); |
|
|
|
LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); |
|
|
|
if (!StringUtils.equals(ADMIN, user.getUsername())) { |
|
|
|
if (!StringUtils.equals(ADMIN, user.getUsername())) { |
|
|
|
queryWrapper.like("manager_users", user.getId()); |
|
|
|
queryWrapper.like("manager_users", user.getId()); |
|
|
|
} |
|
|
|
} |
|
|
|
queryWrapper.orderByDesc("create_time"); |
|
|
|
if (type != null && type.size() > 0) |
|
|
|
|
|
|
|
queryWrapper.and(qw -> { |
|
|
|
|
|
|
|
for (int i = 0; i < type.size(); i++) { |
|
|
|
|
|
|
|
qw.eq("type_id", type.get(i)); |
|
|
|
|
|
|
|
if (i != type.size() - 1) |
|
|
|
|
|
|
|
qw.or(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
// projectId
|
|
|
|
|
|
|
|
Calendar now = Calendar.getInstance(); |
|
|
|
|
|
|
|
int year = now.get(Calendar.YEAR); |
|
|
|
|
|
|
|
int month = now.get(Calendar.MONTH) + 1; |
|
|
|
|
|
|
|
int day = now.get(Calendar.DAY_OF_MONTH); |
|
|
|
|
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
|
|
|
|
|
|
|
if (time != null) { |
|
|
|
|
|
|
|
switch (time) { |
|
|
|
|
|
|
|
case 1: {//当前天
|
|
|
|
|
|
|
|
Date startTime = sdf.parse(year + "-" + month + "-" + day + " 00:00:00"); |
|
|
|
|
|
|
|
Date endTime = sdf.parse(year + "-" + month + "-" + day + " 23:59:59"); |
|
|
|
|
|
|
|
queryWrapper.ge("start_time", startTime); |
|
|
|
|
|
|
|
queryWrapper.le("start_time", endTime); |
|
|
|
|
|
|
|
break; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
case 2: {//当前周
|
|
|
|
|
|
|
|
Calendar now1 = Calendar.getInstance(); |
|
|
|
|
|
|
|
now1.set(Calendar.DAY_OF_WEEK, 2); |
|
|
|
|
|
|
|
int year1 = now1.get(Calendar.YEAR); |
|
|
|
|
|
|
|
int month1 = now1.get(Calendar.MONTH) + 1; |
|
|
|
|
|
|
|
int day1 = now1.get(Calendar.DAY_OF_MONTH); |
|
|
|
|
|
|
|
now1.set(Calendar.DATE, now1.get(Calendar.DATE) + 6); |
|
|
|
|
|
|
|
int year2 = now1.get(Calendar.YEAR); |
|
|
|
|
|
|
|
int month2 = now1.get(Calendar.MONTH) + 1; |
|
|
|
|
|
|
|
int day2 = now1.get(Calendar.DAY_OF_MONTH); |
|
|
|
|
|
|
|
Date startTime = sdf.parse(year1 + "-" + month1 + "-" + day1 + " 00:00:00"); |
|
|
|
|
|
|
|
Date endTime = sdf.parse(year2 + "-" + month2 + "-" + day2 + " 23:59:59"); |
|
|
|
|
|
|
|
queryWrapper.ge("start_time", startTime); |
|
|
|
|
|
|
|
queryWrapper.le("start_time", endTime); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
case 3: {//当前月
|
|
|
|
|
|
|
|
int minDay = now.getActualMinimum(Calendar.DAY_OF_MONTH); |
|
|
|
|
|
|
|
int lastDay = now.getActualMaximum(Calendar.DAY_OF_MONTH); |
|
|
|
|
|
|
|
Date startTime = sdf.parse(year + "-" + month + "-" + minDay + " 00:00:00"); |
|
|
|
|
|
|
|
Date endTime = sdf.parse(year + "-" + month + "-" + lastDay + " 23:59:59"); |
|
|
|
|
|
|
|
queryWrapper.ge("start_time", startTime); |
|
|
|
|
|
|
|
queryWrapper.le("start_time", endTime); |
|
|
|
|
|
|
|
break; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
// case 4: {
|
|
|
|
|
|
|
|
// Date startTime = sdf.parse(year + "-" + month + "-" + day + " 00:00:00");
|
|
|
|
|
|
|
|
// Date endTime = sdf.parse(year + "-" + month + "-" + day + " 23:59:59");
|
|
|
|
|
|
|
|
// queryWrapper.ge("create_time", startTime);
|
|
|
|
|
|
|
|
// queryWrapper.le("create_time", endTime);
|
|
|
|
|
|
|
|
// break;
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (task != null && StringUtils.isNotBlank(task.getModuleId())) { |
|
|
|
|
|
|
|
String moduleId = task.getModuleId(); |
|
|
|
|
|
|
|
queryWrapper.like("module_id", moduleId); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (task != null && StringUtils.isNotBlank(task.getProjectId())) { |
|
|
|
|
|
|
|
String projectId = task.getProjectId(); |
|
|
|
|
|
|
|
queryWrapper.like("project_id", projectId); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (task != null && StringUtils.isNotBlank(task.getTypeId())) { |
|
|
|
|
|
|
|
String typeId = task.getTypeId(); |
|
|
|
|
|
|
|
queryWrapper.like("type_id", typeId); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (task != null && StringUtils.isNotBlank(task.getManagerUsers())) { |
|
|
|
|
|
|
|
String managerUsers = task.getManagerUsers(); |
|
|
|
|
|
|
|
queryWrapper.like("manager_users", managerUsers); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
// List<SysUser> sysUsers = taskService.UserIdByUserName(userName);
|
|
|
|
|
|
|
|
// queryWrapper.and(qw -> {
|
|
|
|
|
|
|
|
// for (int i = 0; i < sysUsers.size(); i++) {
|
|
|
|
|
|
|
|
// qw.like("manager_users", sysUsers.get(i).getId());
|
|
|
|
|
|
|
|
// if (i != sysUsers.size() - 1)
|
|
|
|
|
|
|
|
// qw.or();
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// });
|
|
|
|
|
|
|
|
if (task != null && StringUtils.isNotBlank(task.getTaskName())) { |
|
|
|
|
|
|
|
String tas = task.getTaskName(); |
|
|
|
|
|
|
|
if (tas.startsWith("*") && tas.endsWith("*")) |
|
|
|
|
|
|
|
tas = tas.substring(1, tas.length() - 1); |
|
|
|
|
|
|
|
queryWrapper.like("task_name", tas); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (task != null && task.getWorkStatus() != null && (task.getWorkStatus() == 0 || task.getWorkStatus() == 1)) { |
|
|
|
|
|
|
|
queryWrapper.in("work_status", 0, 1); |
|
|
|
|
|
|
|
} else if (task != null && task.getWorkStatus() != null && (task.getWorkStatus() == 2 || task.getWorkStatus() == 9)) { |
|
|
|
|
|
|
|
queryWrapper.in("work_status", 2, 9); |
|
|
|
|
|
|
|
} else if (task != null && task.getWorkStatus() != null) { |
|
|
|
|
|
|
|
queryWrapper.eq("work_status", task.getWorkStatus()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
queryWrapper.orderByDesc("update_time"); |
|
|
|
IPage<Task> pageList = taskService.page(page, queryWrapper); |
|
|
|
IPage<Task> pageList = taskService.page(page, queryWrapper); |
|
|
|
pageList.getRecords().stream().forEach(e -> { |
|
|
|
pageList.getRecords().stream().forEach(e -> { |
|
|
|
String startDate = DateUtils.date2Str(e.getStartTime(), new SimpleDateFormat(FORMAT)); |
|
|
|
String startDate = DateUtils.date2Str(e.getStartTime(), new SimpleDateFormat(FORMAT)); |
|
|
@ -138,18 +232,89 @@ public class TaskController extends JeecgController<Task, ITaskService> { |
|
|
|
e.setUpperTaskName(taskUpper.getTaskName()); |
|
|
|
e.setUpperTaskName(taskUpper.getTaskName()); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if (e.getTaskFile()!=null&& !e.getTaskFile().equals("")){ |
|
|
|
if (e.getTaskFile() != null && !e.getTaskFile().equals("")) { |
|
|
|
e.setContentType("file"); |
|
|
|
e.setContentType("file"); |
|
|
|
}else if(e.getTaskPic()!=null&& !e.getTaskPic().equals("")){ |
|
|
|
} else if (e.getTaskPic() != null && !e.getTaskPic().equals("")) { |
|
|
|
e.setContentType("image"); |
|
|
|
e.setContentType("image"); |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
e.setContentType("text"); |
|
|
|
e.setContentType("text"); |
|
|
|
} |
|
|
|
} |
|
|
|
String managerUsers = e.getManagerUsers(); |
|
|
|
String managerUsers = e.getManagerUsers(); |
|
|
|
if (managerUsers!=null&&!managerUsers.equals("")) { |
|
|
|
if (managerUsers != null && !managerUsers.equals("")) { |
|
|
|
SysUser byId = iSysUserService.getById(managerUsers); |
|
|
|
String[] managerUsers1 = managerUsers.split(","); |
|
|
|
if (byId!=null) |
|
|
|
StringBuilder avatars = new StringBuilder(); |
|
|
|
e.setHeadpic(byId.getAvatar()); |
|
|
|
for (String managerUser : managerUsers1) { |
|
|
|
|
|
|
|
SysUser byId = iSysUserService.getById(managerUser); |
|
|
|
|
|
|
|
if (byId != null) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
avatars.append(byId.getAvatar()).append(","); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
avatars = new StringBuilder(avatars.substring(0, avatars.length() - 1)); |
|
|
|
|
|
|
|
e.setHeadpic(avatars.toString()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
return Result.OK(pageList); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@AutoLog(value = "任务管理-分页列表查询") |
|
|
|
|
|
|
|
@ApiOperation(value = "任务管理-分页列表查询", notes = "任务管理-分页列表查询") |
|
|
|
|
|
|
|
@GetMapping(value = "/list1") |
|
|
|
|
|
|
|
public Result<?> queryPageList1(Task task, |
|
|
|
|
|
|
|
@RequestParam(name = "userId") String userId, |
|
|
|
|
|
|
|
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|
|
|
|
|
|
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|
|
|
|
|
|
|
HttpServletRequest req) { |
|
|
|
|
|
|
|
QueryWrapper<Task> queryWrapper = QueryGenerator.initQueryWrapper(task, req.getParameterMap()); |
|
|
|
|
|
|
|
Page<Task> page = new Page<Task>(pageNo, pageSize); |
|
|
|
|
|
|
|
queryWrapper.like("manager_users", userId); |
|
|
|
|
|
|
|
queryWrapper.like("work_status", 3); |
|
|
|
|
|
|
|
queryWrapper.orderByDesc("update_time"); |
|
|
|
|
|
|
|
IPage<Task> pageList = taskService.page(page, queryWrapper); |
|
|
|
|
|
|
|
pageList.getRecords().stream().forEach(e -> { |
|
|
|
|
|
|
|
String startDate = DateUtils.date2Str(e.getStartTime(), new SimpleDateFormat(FORMAT)); |
|
|
|
|
|
|
|
String endDate = DateUtils.date2Str(e.getExpectedEndTime(), new SimpleDateFormat(FORMAT)); |
|
|
|
|
|
|
|
String startEndTime = startDate + "-" + endDate; |
|
|
|
|
|
|
|
e.setStartEndTime(startEndTime); |
|
|
|
|
|
|
|
Projectx projectx = iProjectxService.getById(e.getProjectId()); |
|
|
|
|
|
|
|
e.setUnion(projectx.getProjectName()); |
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(e.getModuleId())) { |
|
|
|
|
|
|
|
Modulex modulex = iModulexService.getById(e.getModuleId()); |
|
|
|
|
|
|
|
e.setUnion(e.getUnion() + "-" + modulex.getModuleName()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(e.getFunctionId())) { |
|
|
|
|
|
|
|
Functionx functionx = iFunctionxService.getById(e.getFunctionId()); |
|
|
|
|
|
|
|
e.setUnion(e.getUnion() + "-" + functionx.getFunctionName()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(e.getRuleId())) { |
|
|
|
|
|
|
|
Rulex rulex = iRulexService.getById(e.getRuleId()); |
|
|
|
|
|
|
|
e.setUnion(e.getUnion() + "-" + rulex.getRuleCode()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(e.getUpperId())) { |
|
|
|
|
|
|
|
Task taskUpper = taskService.getById(e.getUpperId()); |
|
|
|
|
|
|
|
if (ObjectUtils.isNotEmpty(taskUpper)) { |
|
|
|
|
|
|
|
e.setUpperTaskName(taskUpper.getTaskName()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (e.getTaskFile() != null && !e.getTaskFile().equals("")) { |
|
|
|
|
|
|
|
e.setContentType("file"); |
|
|
|
|
|
|
|
} else if (e.getTaskPic() != null && !e.getTaskPic().equals("")) { |
|
|
|
|
|
|
|
e.setContentType("image"); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
e.setContentType("text"); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
String managerUsers = e.getManagerUsers(); |
|
|
|
|
|
|
|
if (managerUsers != null && !managerUsers.equals("")) { |
|
|
|
|
|
|
|
String[] managerUsers1 = managerUsers.split(","); |
|
|
|
|
|
|
|
StringBuilder avatars = new StringBuilder(); |
|
|
|
|
|
|
|
for (String managerUser : managerUsers1) { |
|
|
|
|
|
|
|
SysUser byId = iSysUserService.getById(managerUser); |
|
|
|
|
|
|
|
if (byId != null) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
avatars.append(byId.getAvatar()).append(","); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
avatars = new StringBuilder(avatars.substring(0, avatars.length() - 1)); |
|
|
|
|
|
|
|
e.setHeadpic(avatars.toString()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
}); |
|
|
|
}); |
|
|
|