From 03659ed5495f398786ff5f8f426d53f7d434d17a Mon Sep 17 00:00:00 2001
From: shiji <1913712590@qq.com>
Date: Wed, 19 Jul 2023 16:52:03 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E6=A8=A1=E5=9D=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/views/task/TaskList.vue | 25 ++-
.../task/controller/TaskController.java | 193 ++++++++++++++++--
.../org/jeecg/modules/task/entity/Task.java | 1 +
.../modules/task/service/ITaskService.java | 5 +
.../task/service/impl/TaskServiceImpl.java | 15 ++
5 files changed, 223 insertions(+), 16 deletions(-)
diff --git a/ant-design-vue-jeecg/src/views/task/TaskList.vue b/ant-design-vue-jeecg/src/views/task/TaskList.vue
index 48aed84..b5762f5 100644
--- a/ant-design-vue-jeecg/src/views/task/TaskList.vue
+++ b/ant-design-vue-jeecg/src/views/task/TaskList.vue
@@ -21,7 +21,22 @@
style="width: 100%">
-
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
查询
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/controller/TaskController.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/controller/TaskController.java
index 0af3095..f378790 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/controller/TaskController.java
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/controller/TaskController.java
@@ -42,10 +42,7 @@ import javax.servlet.http.HttpServletResponse;
import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.List;
-import java.util.Optional;
+import java.util.*;
/**
* @Description: 任务管理
@@ -101,17 +98,114 @@ public class TaskController extends JeecgController {
@ApiOperation(value = "任务管理-分页列表查询", notes = "任务管理-分页列表查询")
@GetMapping(value = "/list")
public Result> queryPageList(Task task,
+ @RequestParam(name = "type", required = false) List type,
+ @RequestParam(name = "userName", defaultValue = "") String userName,
+ @RequestParam(name = "time", required = false) Integer time,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
- HttpServletRequest req) {
- QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(task, req.getParameterMap());
+ HttpServletRequest req) throws ParseException {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
Page page = new Page(pageNo, pageSize);
LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if (!StringUtils.equals(ADMIN, user.getUsername())) {
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 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 pageList = taskService.page(page, queryWrapper);
pageList.getRecords().stream().forEach(e -> {
String startDate = DateUtils.date2Str(e.getStartTime(), new SimpleDateFormat(FORMAT));
@@ -138,18 +232,89 @@ public class TaskController extends JeecgController {
e.setUpperTaskName(taskUpper.getTaskName());
}
}
- if (e.getTaskFile()!=null&& !e.getTaskFile().equals("")){
+ if (e.getTaskFile() != null && !e.getTaskFile().equals("")) {
e.setContentType("file");
- }else if(e.getTaskPic()!=null&& !e.getTaskPic().equals("")){
+ } else if (e.getTaskPic() != null && !e.getTaskPic().equals("")) {
e.setContentType("image");
- }else{
+ } else {
e.setContentType("text");
}
String managerUsers = e.getManagerUsers();
- if (managerUsers!=null&&!managerUsers.equals("")) {
- SysUser byId = iSysUserService.getById(managerUsers);
- if (byId!=null)
- e.setHeadpic(byId.getAvatar());
+ 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());
+ }
+
+ });
+ 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 queryWrapper = QueryGenerator.initQueryWrapper(task, req.getParameterMap());
+ Page page = new Page(pageNo, pageSize);
+ queryWrapper.like("manager_users", userId);
+ queryWrapper.like("work_status", 3);
+ queryWrapper.orderByDesc("update_time");
+ IPage 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());
}
});
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/entity/Task.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/entity/Task.java
index c7f4af9..e75d257 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/entity/Task.java
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/entity/Task.java
@@ -97,6 +97,7 @@ public class Task implements Serializable {
*/
@Excel(name = "模块id", width = 15)
@ApiModelProperty(value = "模块id")
+ @Dict(dictTable = "modulex", dicText = "module_name",dicCode = "id")
private java.lang.String moduleId;
/**
* 功能id
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/service/ITaskService.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/service/ITaskService.java
index 52aae34..1cc1fb4 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/service/ITaskService.java
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/service/ITaskService.java
@@ -2,8 +2,11 @@ package org.jeecg.modules.task.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.common.api.vo.Result;
+import org.jeecg.modules.system.entity.SysUser;
import org.jeecg.modules.task.entity.Task;
+import java.util.List;
+
/**
* @Description: 任务管理
* @Author: jeecg-boot
@@ -26,4 +29,6 @@ public interface ITaskService extends IService {
Result> fabu(String id);
String fillTaskName(String projectId, String typeId);
+
+// List UserIdByUserName(String userName);
}
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/service/impl/TaskServiceImpl.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/service/impl/TaskServiceImpl.java
index 2a63008..ec6f254 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/service/impl/TaskServiceImpl.java
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/service/impl/TaskServiceImpl.java
@@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.projectx.entity.Projectx;
import org.jeecg.modules.projectx.service.IProjectxService;
+import org.jeecg.modules.system.entity.SysUser;
+import org.jeecg.modules.system.service.ISysUserService;
import org.jeecg.modules.task.entity.Task;
import org.jeecg.modules.task.mapper.TaskMapper;
import org.jeecg.modules.task.service.ITaskService;
@@ -35,7 +37,10 @@ public class TaskServiceImpl extends ServiceImpl implements IT
@Resource
private ITaskTypeService iTaskTypeService;
+// @Resource
+// private ISysUserService sysUserService;
/**
+ * 责任人回显
* 责任人回显
*/
@Override
@@ -145,4 +150,14 @@ public class TaskServiceImpl extends ServiceImpl implements IT
String fillName = taskType.getTypeName() + "-" + projectx.getProjectName();
return fillName;
}
+// @Override
+// public List UserIdByUserName(String userName) {
+// if (userName==null)
+// return null;
+// LambdaQueryWrapper wrapper=new LambdaQueryWrapper<>();
+// if(userName.startsWith("*")&&userName.endsWith("*"))
+// userName = userName.substring(1, userName.length() - 1);
+// wrapper.eq(SysUser::getUsername,userName);
+// return sysUserService.list(wrapper);
+// }
}