From 58e03e9e2b9dbc18e669ca55bb85b7318218cbae Mon Sep 17 00:00:00 2001 From: dx <1242347652@qq.com> Date: Mon, 17 Feb 2025 16:32:51 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=88=97=E8=A1=A8=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/taskinfo/vo/TaskInfoPageReqVO.java | 8 +- .../controller/home/HomeController.java | 3 +- .../controller/home/vo/HomeCountResVO.java | 13 ++ .../mysql/enterprise/EnterpriseMapper.java | 2 +- .../dal/mysql/taskinfo/TaskInfoMapper.java | 2 +- .../config/DataPermissionConfiguration.java | 6 + .../enterprise/EnterpriseServiceImpl.java | 27 ++-- .../system/service/home/HomeService.java | 3 +- .../system/service/home/HomeServiceImpl.java | 70 +++++++++- .../service/taskinfo/TaskInfoServiceImpl.java | 126 +++++++++--------- .../mapper/taskinfo/TaskInfoMapper.xml | 51 ++++--- 11 files changed, 206 insertions(+), 105 deletions(-) create mode 100644 yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/home/vo/HomeCountResVO.java diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/taskinfo/vo/TaskInfoPageReqVO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/taskinfo/vo/TaskInfoPageReqVO.java index 4afca96..c3de4e2 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/taskinfo/vo/TaskInfoPageReqVO.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/taskinfo/vo/TaskInfoPageReqVO.java @@ -64,6 +64,10 @@ public class TaskInfoPageReqVO extends PageParam { @Schema(description = "总共几步") private Integer taskTotal; + private LocalDateTime startTime; + + private LocalDateTime endTime; + @Schema(description = "企业集合", example = "1") private List<Long> enterpriseInspectionsIdes; @@ -79,10 +83,10 @@ public class TaskInfoPageReqVO extends PageParam { private Integer selectWeek; @Schema(description = "用户id", example = "1") - private Integer userId; + private Long userId; @Schema(description = "部门id", example = "1") - private Integer deptId; + private Long deptId; @Schema(description = "企业id", example = "1") private Long enterpriseId; diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/home/HomeController.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/home/HomeController.java index 4db2c16..8b2273c 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/home/HomeController.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/home/HomeController.java @@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.system.controller.home; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.module.system.controller.admin.inspectionslog.vo.InspectionsLogAppListVO; +import cn.iocoder.yudao.module.system.controller.home.vo.HomeCountResVO; import cn.iocoder.yudao.module.system.controller.home.vo.HomeSelectVO; import cn.iocoder.yudao.module.system.service.home.HomeService; import io.swagger.v3.oas.annotations.Operation; @@ -30,7 +31,7 @@ public class HomeController { @GetMapping("/appCount1") @Operation(summary = "app首页统计第一块") // @PreAuthorize("@ss.hasPermission('system:inspections-log:create')") - public CommonResult<List<InspectionsLogAppListVO>> signInList(HomeSelectVO homeSelectVO) { + public CommonResult<HomeCountResVO> signInList(HomeSelectVO homeSelectVO) { return success(homeService.appCount1(homeSelectVO)); } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/home/vo/HomeCountResVO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/home/vo/HomeCountResVO.java new file mode 100644 index 0000000..baf803b --- /dev/null +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/home/vo/HomeCountResVO.java @@ -0,0 +1,13 @@ +package cn.iocoder.yudao.module.system.controller.home.vo; + +import lombok.Data; + +@Data +public class HomeCountResVO { + //任务总数 + private Long taskCount; + //执法总数 + private Long inspectionsCount; + private Long enterpriseCount; + +} diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/enterprise/EnterpriseMapper.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/enterprise/EnterpriseMapper.java index 24f72a4..551e673 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/enterprise/EnterpriseMapper.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/enterprise/EnterpriseMapper.java @@ -28,7 +28,7 @@ public interface EnterpriseMapper extends BaseMapperX<EnterpriseDO> { .eqIfPresent(EnterpriseDO::getRegion, reqVO.getRegion()) .likeIfPresent(EnterpriseDO::getEnterprisesName, reqVO.getEnterprisesName()) .eqIfPresent(EnterpriseDO::getAddress, reqVO.getAddress()) - .eqIfPresent(EnterpriseDO::getIsAudit, 1) + .eqIfPresent(EnterpriseDO::getIsAudit, reqVO.getIsAudit()) .eqIfPresent(EnterpriseDO::getEnterprisesStatus, reqVO.getEnterprisesStatus()) .likeIfPresent(EnterpriseDO::getContactName, reqVO.getContactName()) .eqIfPresent(EnterpriseDO::getEnvironmentalContactPhone, reqVO.getEnvironmentalContactPhone()) diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/taskinfo/TaskInfoMapper.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/taskinfo/TaskInfoMapper.java index 47ac243..fd36949 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/taskinfo/TaskInfoMapper.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/taskinfo/TaskInfoMapper.java @@ -61,7 +61,7 @@ public interface TaskInfoMapper extends BaseMapperX<TaskInfoDO> { } //优化任务查询 - PageResult<TaskInfoDO> selectMyPage(TaskInfoPageReqVO reqVO); + IPage<TaskInfoDO> selectMyPage(Page<TaskInfoDO> page, @Param("params") TaskInfoPageReqVO reqVO); //根据企业id查任务 IPage<TaskInfoDO> selectPageByEnterpriseId(Page<TaskInfoDO> page, @Param("reqVO") TaskInfoPageReqVO reqVO); diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/framework/datapermission/config/DataPermissionConfiguration.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/framework/datapermission/config/DataPermissionConfiguration.java index 136866c..d36f635 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/framework/datapermission/config/DataPermissionConfiguration.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/framework/datapermission/config/DataPermissionConfiguration.java @@ -1,6 +1,7 @@ package cn.iocoder.yudao.module.system.framework.datapermission.config; import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO; +import cn.iocoder.yudao.module.system.dal.dataobject.enterprise.EnterpriseDO; import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO; import cn.iocoder.yudao.framework.datapermission.core.rule.dept.DeptDataPermissionRuleCustomizer; import org.springframework.context.annotation.Bean; @@ -22,6 +23,11 @@ public class DataPermissionConfiguration { rule.addDeptColumn(DeptDO.class, "id"); // user rule.addUserColumn(AdminUserDO.class, "id"); + //enterprise + rule.addDeptColumn(EnterpriseDO.class, "department_id"); + rule.addUserColumn(EnterpriseDO.class, "user_id"); + + }; } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/enterprise/EnterpriseServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/enterprise/EnterpriseServiceImpl.java index d26d8e2..599c9b4 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/enterprise/EnterpriseServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/enterprise/EnterpriseServiceImpl.java @@ -181,25 +181,24 @@ public class EnterpriseServiceImpl implements EnterpriseService { return enterpriseMapper.selectList(pageReqVO); } - @Override public PageResult<EnterpriseDO> getEnterpriseByUserId(EnterprisePageReqVO pageReqVO) { //根据不同身份查询企业 //专管员查询 user_id //队长 查询部门 所有的 user_id in - QueryWrapper<UserRoleDO> roleDOQueryWrapper = new QueryWrapper<>(); - roleDOQueryWrapper.eq("user_id", getLoginUserId()); - final List<UserRoleDO> userRoleDOS = userRoleMapper.selectList(roleDOQueryWrapper); - final List<Long> collect = userRoleDOS.stream().map(item -> item.getRoleId()).collect(Collectors.toList()); - //判断 collect 里面是否包含 roleId = 11 - if (collect.contains(11L)) { -// //队长 -// pageReqVO.setUserId(null); -// pageReqVO.setDeptId(null); - } else if (collect.contains(155L)) { - //专管员 - pageReqVO.setUserId(getLoginUserId()); - } +// QueryWrapper<UserRoleDO> roleDOQueryWrapper = new QueryWrapper<>(); +// roleDOQueryWrapper.eq("user_id", getLoginUserId()); +// final List<UserRoleDO> userRoleDOS = userRoleMapper.selectList(roleDOQueryWrapper); +// final List<Long> collect = userRoleDOS.stream().map(item -> item.getRoleId()).collect(Collectors.toList()); +// //判断 collect 里面是否包含 roleId = 11 +// if (collect.contains(11L)) { +//// //队长 +//// pageReqVO.setUserId(null); +//// pageReqVO.setDeptId(null); +// } else if (collect.contains(155L)) { +// //专管员 +// pageReqVO.setUserId(getLoginUserId()); +// } // pageReqVO.setCreate(getLoginUserId().toString()); final PageResult<EnterpriseDO> enterpriseDOPageResult = enterpriseMapper.selectPage(pageReqVO); diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeService.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeService.java index 6a56fb6..4596bf9 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeService.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeService.java @@ -1,10 +1,11 @@ package cn.iocoder.yudao.module.system.service.home; import cn.iocoder.yudao.module.system.controller.admin.inspectionslog.vo.InspectionsLogAppListVO; +import cn.iocoder.yudao.module.system.controller.home.vo.HomeCountResVO; import cn.iocoder.yudao.module.system.controller.home.vo.HomeSelectVO; import java.util.List; public interface HomeService { - List<InspectionsLogAppListVO> appCount1(HomeSelectVO homeSelectVO); + HomeCountResVO appCount1(HomeSelectVO homeSelectVO); } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceImpl.java index 7df28c5..de66709 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceImpl.java @@ -1,15 +1,83 @@ package cn.iocoder.yudao.module.system.service.home; +import cn.iocoder.yudao.module.system.controller.admin.enterprise.vo.EnterprisePageReqVO; import cn.iocoder.yudao.module.system.controller.admin.inspectionslog.vo.InspectionsLogAppListVO; +import cn.iocoder.yudao.module.system.controller.home.vo.HomeCountResVO; import cn.iocoder.yudao.module.system.controller.home.vo.HomeSelectVO; +import cn.iocoder.yudao.module.system.dal.dataobject.enterprise.EnterpriseDO; +import cn.iocoder.yudao.module.system.dal.mysql.enterprise.EnterpriseMapper; +import cn.iocoder.yudao.module.system.dal.mysql.enterprisetag.EnterpriseTagMapper; +import cn.iocoder.yudao.module.system.dal.mysql.taskinfo.TaskInfoMapper; +import cn.iocoder.yudao.module.system.service.dept.DeptService; +import cn.iocoder.yudao.module.system.service.enterprise.EnterpriseService; +import cn.iocoder.yudao.module.system.service.taskinfo.TaskInfoService; +import cn.iocoder.yudao.module.system.service.user.AdminUserService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import org.springframework.stereotype.Service; +import javax.annotation.Resource; +import java.time.LocalDateTime; import java.util.List; @Service public class HomeServiceImpl implements HomeService{ + + @Resource + private EnterpriseMapper enterpriseMapper; + + @Resource + private TaskInfoService taskInfoService; + + @Resource + private TaskInfoMapper taskInfoMapper; + @Resource + private EnterpriseTagMapper enterpriseTagMapper; + @Resource + private AdminUserService adminUserService; + @Resource + private DeptService deptService; + + @Override - public List<InspectionsLogAppListVO> appCount1(HomeSelectVO homeSelectVO) { + public HomeCountResVO appCount1(HomeSelectVO homeSelectVO) { + + HomeCountResVO homeCountResVO = new HomeCountResVO(); + + LambdaQueryWrapper<EnterpriseDO> enterpriseDOLambdaQueryWrapper = new LambdaQueryWrapper<>(); + + //按时间查询 + if (homeSelectVO.getSelectWeek() != null) { + LocalDateTime now = LocalDateTime.now(); + LocalDateTime[] dateList = new LocalDateTime[2]; + + switch (homeSelectVO.getSelectWeek()) { + case 1: + dateList[0] = now.minusDays(3); // 三天前 + break; + case 2: + dateList[0] = now.minusWeeks(1); // 一周前 + break; + case 3: + dateList[0] = now.minusMonths(1); // 一月前 + break; + case 4: + dateList[0] = now.minusYears(1); // 一年前 + break; + } + dateList[1] = now; + + enterpriseDOLambdaQueryWrapper.between(EnterpriseDO::getCreateTime, dateList[0], dateList[1]); + } + + final Long enterpriseCount = enterpriseMapper.selectCount(enterpriseDOLambdaQueryWrapper); + + homeCountResVO.setEnterpriseCount(enterpriseCount); + + +// taskInfoService.getTaskInfoAppPage() + + //根据不同的身份查询 + return null; // return List.of(); } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/taskinfo/TaskInfoServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/taskinfo/TaskInfoServiceImpl.java index 2f40f7c..93d4b75 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/taskinfo/TaskInfoServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/taskinfo/TaskInfoServiceImpl.java @@ -207,91 +207,84 @@ public class TaskInfoServiceImpl implements TaskInfoService { @Override public PageResult<TaskInfoDO> getTaskInfoAppPage(TaskInfoPageReqVO pageReqVO) { - //按标签查询 - if (pageReqVO.getTagList() != null && pageReqVO.getTagList().size() > 0) { - LambdaQueryWrapper<TaskTagDO> wrapper = new LambdaQueryWrapper<>(); - wrapper.in(TaskTagDO::getTagId, pageReqVO.getTagList()); - final List<TaskTagDO> taskTagDOS = taskTagMapper.selectList(wrapper); - if (taskTagDOS != null && taskTagDOS.size() > 0) { - pageReqVO.setTagList(taskTagDOS.stream().map(item->item.getTaskId()).collect(Collectors.toList())); - } - } +// //按标签查询 +// if (pageReqVO.getTagList() != null && pageReqVO.getTagList().size() > 0) { +// LambdaQueryWrapper<TaskTagDO> wrapper = new LambdaQueryWrapper<>(); +// wrapper.in(TaskTagDO::getTagId, pageReqVO.getTagList()); +// final List<TaskTagDO> taskTagDOS = taskTagMapper.selectList(wrapper); +// if (taskTagDOS != null && taskTagDOS.size() > 0) { +// pageReqVO.setTagList(taskTagDOS.stream().map(item->item.getTaskId()).collect(Collectors.toList())); +// } +// } //按时间查询 if (pageReqVO.getSelectWeek() != null) { LocalDateTime now = LocalDateTime.now(); - LocalDateTime[] dateList = new LocalDateTime[2]; + + pageReqVO.setEndTime(now); + + LocalDateTime startTime = null; switch (pageReqVO.getSelectWeek()) { case 1: - dateList[0] = now.minusDays(3); // 三天前 + startTime = now.minusDays(3); // 三天前 break; case 2: - dateList[0] = now.minusWeeks(1); // 一周前 + startTime = now.minusWeeks(1); // 一周前 break; case 3: - dateList[0] = now.minusMonths(1); // 一月前 + startTime = now.minusMonths(1); // 一月前 break; case 4: - dateList[0] = now.minusYears(1); // 一年前 + startTime = now.minusYears(1); // 一年前 break; } - dateList[1] = now; - pageReqVO.setEndDate(dateList); + + pageReqVO.setStartTime(startTime); + } + //根据不同的角色查询 + /* + 管理员,局长,查全部 + 检查员,查自己的 + 队长 查本部门 + */ + Long loginUserId = SecurityFrameworkUtils.getLoginUserId(); + + final AdminUserDO user1 = adminUserService.getUser(loginUserId); + if (user1.getPostIds().contains(1l) || user1.getPostIds().contains(2l)) { + //全部 + } else if (user1.getPostIds().contains(4l)) { + //本部门 + pageReqVO.setDeptId(user1.getDeptId()); + + } else if (user1.getPostIds().contains(5l)) { + //自己 + pageReqVO.setUserId(loginUserId); } - final PageResult<TaskInfoDO> taskInfoDOPageResult = taskInfoMapper.selectAppPage(pageReqVO); - if (taskInfoDOPageResult.getList() != null && taskInfoDOPageResult.getList().size() > 0) { - taskInfoDOPageResult.getList().forEach(item->{ - QueryWrapper<EnterpriseInspectionsDO> wrapper = new QueryWrapper<>(); - wrapper.eq("task_id", item.getId()); - //根据不同的角色查询 - /* - 管理员,局长,查全部 - 检查员,查自己的 - 队长 查本部门 - */ - Long loginUserId = SecurityFrameworkUtils.getLoginUserId(); - - final AdminUserDO user1 = adminUserService.getUser(loginUserId); - if (user1.getPostIds().contains(1l) || user1.getPostIds().contains(2l)) { - //全部 - } else if (user1.getPostIds().contains(4l)) { - //本部门 - final List<AdminUserDO> adminUserDOS = adminUserMapper.selectList(new QueryWrapper<AdminUserDO>().eq("dept_id", user1.getDeptId())); - - if (adminUserDOS != null || adminUserDOS.size() > 0) { - final List<Long> collect = adminUserDOS.stream().map(res -> res.getId()).collect(Collectors.toList()); - wrapper.in("user_id", collect); - } - - } else if (user1.getPostIds().contains(5l)) { - //自己 - wrapper.eq("user_id", loginUserId); - } +// final PageResult<TaskInfoDO> taskInfoDOPageResult = taskInfoMapper.selectAppPage(pageReqVO); - item.setTaskExecNum(0); + Page<TaskInfoDO> page = new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize()); + final IPage<TaskInfoDO> taskInfoDOIPage = taskInfoMapper.selectMyPage(page, pageReqVO); + final PageResult<TaskInfoDO> taskInfoDOPageResult = new PageResult<>(taskInfoDOIPage.getRecords(), taskInfoDOIPage.getTotal()); - List<EnterpriseInspectionsDO> enterpriseInspectionsDOList = enterpriseInspectionsMapper.selectList(wrapper); - log.info("enterpriseInspectionsDOList:{}", enterpriseInspectionsDOList); - if (enterpriseInspectionsDOList != null && enterpriseInspectionsDOList.size() > 0) { - item.setTaskExecNum(enterpriseInspectionsDOList.size()); - final List<EnterpriseInspectionsDO> collect = enterpriseInspectionsDOList.stream().filter(res -> res.getStatus() == 5).collect(Collectors.toList()); - item.setTaskFinishNum(collect.size()); - } + if (taskInfoDOPageResult.getList() != null && taskInfoDOPageResult.getList().size() > 0) { + taskInfoDOPageResult.getList().forEach(item->{ +// item.setTaskExecNum(0); +// +// List<EnterpriseInspectionsDO> enterpriseInspectionsDOList = enterpriseInspectionsMapper.selectList(wrapper); +// log.info("enterpriseInspectionsDOList:{}", enterpriseInspectionsDOList); +// if (enterpriseInspectionsDOList != null && enterpriseInspectionsDOList.size() > 0) { +// item.setTaskExecNum(enterpriseInspectionsDOList.size()); +// final List<EnterpriseInspectionsDO> collect = enterpriseInspectionsDOList.stream().filter(res -> res.getStatus() == 5).collect(Collectors.toList()); +// item.setTaskFinishNum(collect.size()); +// } //获取任务标签 - QueryWrapper<TaskTagDO> wrapper1 = new QueryWrapper<>(); - wrapper1.eq("task_id", item.getId()); - List<TaskTagDO> taskTagDOList = taskTagMapper.selectList(wrapper1); - if (taskTagDOList != null && taskTagDOList.size() > 0) { - final List<Long> collect = taskTagDOList.stream().map(TaskTagDO::getTagId).collect(Collectors.toList()); - final List<TagLibraryDO> tagLibraryDOS = tagLibraryMapper.selectByIds(collect); - if (tagLibraryDOS != null && tagLibraryDOS.size() > 0) { - item.setTagList(tagLibraryDOS.stream().map(TagLibraryDO::getTagName).collect(Collectors.toList())); - } + final List<TagLibraryDO> tagLibraryDOS1 = tagLibraryService.listByTaskId(item.getId()); + if (tagLibraryDOS1 != null && tagLibraryDOS1.size() > 0) { + item.setTagList(tagLibraryDOS1.stream().map(TagLibraryDO::getTagName).collect(Collectors.toList())); } - enterpriseInspectionsMapper.selectList(); }); } @@ -317,9 +310,10 @@ public class TaskInfoServiceImpl implements TaskInfoService { LambdaQueryWrapper<EnterpriseInspectionsDO> wrapper = new LambdaQueryWrapper<>(); wrapper.eq(EnterpriseInspectionsDO::getTaskId, item.getId()); wrapper.eq(EnterpriseInspectionsDO::getEnterpriseId, pageReqVO.getEnterpriseId()); - final EnterpriseInspectionsDO enterpriseInspectionsDO = enterpriseInspectionsMapper.selectOne(wrapper); - - item.setInspectionsId(enterpriseInspectionsDO.getId()); + final List<EnterpriseInspectionsDO> enterpriseInspectionsDO = enterpriseInspectionsMapper.selectList(wrapper); + if (enterpriseInspectionsDO != null && enterpriseInspectionsDO.size() > 0) { + item.setInspectionsId(enterpriseInspectionsDO.get(0).getId()); + } //发布部门, final Long userId = Long.valueOf(item.getCreator()); diff --git a/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/taskinfo/TaskInfoMapper.xml b/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/taskinfo/TaskInfoMapper.xml index ce67da3..3015678 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/taskinfo/TaskInfoMapper.xml +++ b/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/taskinfo/TaskInfoMapper.xml @@ -12,33 +12,48 @@ <select id="selectMyPage" resultType="cn.iocoder.yudao.module.system.dal.dataobject.taskinfo.TaskInfoDO"> SELECT t.*, - count(ei.task_id), - SUM(CASE WHEN il.status = 2 THEN 1 ELSE 0 END) AS status_2_count + count(ei.task_id) as taskExecNum, + SUM(CASE WHEN il.status = 2 THEN 1 ELSE 0 END) AS taskFinishNum FROM task_info t left join enterprise_inspections ei on t.id = ei.task_id left join inspections_log il on ei.id = il.inspections_id left join enterprises e on e.id = ei.enterprise_id + left join task_tag tt on t.id = tt.task_id + left join tag_library tl on tl.id = tt.tag_id WHERE - t.deleted = 0 and ei.deleted = 0 and il.deleted = 0 GROUP BY t.id - <if test="userId != null and userId != ''"> - AND t.user_id = #{userId} + t.deleted = 0 and ei.deleted = 0 and t.status = 2 + <if test="params.userId != null and params.userId != ''"> + AND ei.user_id = #{params.userId} </if> - <if test="deptId != null and deptId != ''"> - AND e.department_id = #{deptId} + <if test="params.priority != null and params.priority != ''"> + AND t.priority = #{params.priority} </if> - -# ORDER BY t.create_time DESC -# LIMIT #{offset}, #{rows} + <if test="params.status != null and params.status != ''"> + AND t.priority = #{params.status} + </if> + <if test="params.deptId != null and params.deptId != ''"> + AND e.department_id = #{params.deptId} + </if> + <if test="params.endTime != null and params.endTime != ''"> + AND t.end_date between #{params.startTime} and #{params.endTime} + </if> + <if test="params.tagList != null and params. tagList != ''"> + AND tl.id in + <foreach collection="params.tagList" item="tagId" open="(" separator="," close=")"> + #{tagId} + </foreach> + </if> + GROUP BY t.id </select> <select id="selectPageByEnterpriseId" resultType="cn.iocoder.yudao.module.system.dal.dataobject.taskinfo.TaskInfoDO"> - SELECT - t.* - FROM task_info t - left join enterprise_inspections ei on t.id = ei.task_id - WHERE - t.deleted = 0 and ei.deleted = 0 and ei.enterprise_id = #{reqVO.enterpriseId} - GROUP BY t.id - ORDER BY t.create_time DESC + SELECT + t.* + FROM task_info t + left join enterprise_inspections ei on t.id = ei.task_id + WHERE + t.deleted = 0 and ei.deleted = 0 and ei.enterprise_id = #{reqVO.enterpriseId} + GROUP BY t.id + ORDER BY t.create_time DESC </select> </mapper>