From efcbf32425c065e46d8b21bcd561ea96cb8e73a9 Mon Sep 17 00:00:00 2001 From: guo Date: Sat, 13 Apr 2024 15:34:36 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../worker/mapper/xml/WorkerInfoMapper.xml | 2 + .../service/impl/WorkerInfoServiceImpl.java | 4 +- .../xz/controller/XzProjectOrgController.java | 11 ++++++ .../xz/service/IXzProjectOrgService.java | 3 ++ .../service/impl/XzProjectOrgServiceImpl.java | 39 +++++++++++++++++++ .../com/zhgd/xmgl/task/SafetyHatTask.java | 4 +- .../com/zhgd/xmgl/util/HikvisionUtil.java | 4 +- 7 files changed, 62 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/zhgd/xmgl/modules/worker/mapper/xml/WorkerInfoMapper.xml b/src/main/java/com/zhgd/xmgl/modules/worker/mapper/xml/WorkerInfoMapper.xml index 13181dd94..acc8afac3 100644 --- a/src/main/java/com/zhgd/xmgl/modules/worker/mapper/xml/WorkerInfoMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/worker/mapper/xml/WorkerInfoMapper.xml @@ -666,6 +666,7 @@ INNER JOIN team_info g ON (w1.project_sn = g.project_sn and w1.team_id = g.id) WHERE p.create_time >= CONCAT(DATE_FORMAT(now(), "%Y-%m-%d"), ' 00:00:00') and w1.inService_type = 1 + AND w1.person_type=1 and w1.project_sn = #{projectSn} GROUP BY g.worker_type_id ) tp ON w.id = tp.worker_type_id @@ -676,6 +677,7 @@ INNER JOIN team_info b ON a.team_id = b.id WHERE a.project_sn = #{projectSn} and a.inService_type = 1 + AND a.person_type=1 GROUP BY b.worker_type_id ) ap on w.id = ap.worker_type_id WHERE w.project_sn = #{projectSn} diff --git a/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerInfoServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerInfoServiceImpl.java index b52414e27..08cb62e77 100644 --- a/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerInfoServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerInfoServiceImpl.java @@ -1985,7 +1985,8 @@ public class WorkerInfoServiceImpl extends ServiceImpl> treePageList(@ApiIgnore @RequestParam HashMap paramMap) { + return Result.success(xzProjectOrgService.treePageList(paramMap)); + } + /** * 添加 * diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/service/IXzProjectOrgService.java b/src/main/java/com/zhgd/xmgl/modules/xz/service/IXzProjectOrgService.java index 5074af3d0..df372117b 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/service/IXzProjectOrgService.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/service/IXzProjectOrgService.java @@ -1,5 +1,6 @@ package com.zhgd.xmgl.modules.xz.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zhgd.xmgl.modules.xz.entity.XzProjectOrg; import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -26,4 +27,6 @@ public interface IXzProjectOrgService extends IService { void delete(String id); List treeList(HashMap paramMap); + + IPage treePageList(HashMap paramMap); } diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/service/impl/XzProjectOrgServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/xz/service/impl/XzProjectOrgServiceImpl.java index 86ec7b605..134db2853 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/service/impl/XzProjectOrgServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/service/impl/XzProjectOrgServiceImpl.java @@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.zhgd.jeecg.common.execption.OpenAlertException; import com.zhgd.jeecg.common.system.query.QueryGenerator; +import com.zhgd.xmgl.modules.rt.entity.RtRiskInventoryType; import com.zhgd.xmgl.modules.xz.entity.XzProjectOrg; import com.zhgd.xmgl.modules.xz.mapper.XzProjectOrgMapper; import com.zhgd.xmgl.modules.xz.service.IXzProjectOrgService; @@ -175,6 +176,44 @@ public class XzProjectOrgServiceImpl extends ServiceImpl treePageList(HashMap paramMap) { + Integer status = MapUtils.getInteger(paramMap, "status"); + String deptName = MapUtils.getString(paramMap, "deptName"); + String projectSn = MapUtils.getString(paramMap, "projectSn"); + if (StrUtil.isBlank(projectSn)) { + throw new OpenAlertException("projectSn不能为空"); + } + List treeList = null; + if (status != null || StrUtil.isNotBlank(deptName)) { + //有查询条件,不组装tree + return this.queryPageList(paramMap); + } else { + int pageNo = Integer.parseInt(paramMap.getOrDefault("pageNo", 1).toString()); + int pageSize = Integer.parseInt(paramMap.getOrDefault("pageSize", 10).toString()); + List allList = queryList(paramMap); + //组装tree + //获取父节点 + treeList = allList.stream() + .filter(m -> m.getParentId() == 0) + .peek(m -> m.setChildren(getChildren(m, allList)))//peek:执行类似map,但操作之后的数据并不返回到Stream中 + .collect(Collectors.toList()); + treeList.sort((o1, o2) -> { + if (o1.getOrderNum() == null || o2.getOrderNum() == null) { + return 0; + } + return o1.getOrderNum().compareTo(o2.getOrderNum()); + }); + IPage p = new Page<>(); + int i = cn.hutool.core.util.PageUtil.getStart(pageNo - 1, pageSize); + p.setTotal(treeList.size()); + p.setRecords(CollUtil.sub(treeList, i, i + pageSize)); + p.setCurrent(pageNo); + p.setSize(pageSize); + return p; + } + } + private List getChildren(XzProjectOrg st, List allList) { List list = allList.stream() .filter(m -> Objects.equals(m.getParentId(), st.getId())) diff --git a/src/main/java/com/zhgd/xmgl/task/SafetyHatTask.java b/src/main/java/com/zhgd/xmgl/task/SafetyHatTask.java index 4f0555c6f..d624e5e45 100644 --- a/src/main/java/com/zhgd/xmgl/task/SafetyHatTask.java +++ b/src/main/java/com/zhgd/xmgl/task/SafetyHatTask.java @@ -63,9 +63,9 @@ public class SafetyHatTask { @RequestMapping("updateHelmetStatus") public void updateHelmetStatus() { try { - log.info("获取安全帽心跳"); List projectList = projectService.list(Wrappers.lambdaQuery().ne(Project::getHelmetUser, "").ne(Project::getHelmetPassword, "")); if (CollUtil.isNotEmpty(projectList)) { + log.info("定时获取安全帽心跳"); for (Project project : projectList) { log.info("安全帽user:{}", project.getHelmetUser()); SafetyHatWSClient client = SafetyHatWSClient.clientMap.get(project.getHelmetUser()); @@ -101,9 +101,9 @@ public class SafetyHatTask { @SchedulerLock(name = "getHelmetData", lockAtMostFor = 1000 * 60 * 2, lockAtLeastFor = 1000 * 10) @RequestMapping("getHelmetData") public void getHelmetData() { - log.info("定时2分钟获取安全帽数据任务开始"); List projectList = projectService.list(Wrappers.lambdaQuery().ne(Project::getHelmetUser, "").ne(Project::getHelmetPassword, "")); if (CollUtil.isNotEmpty(projectList)) { + log.info("定时2分钟获取安全帽数据任务开始"); for (Project project : projectList) { List devList = safetyHatDevMapper.selectList(new LambdaQueryWrapper() .eq(SafetyHatDev::getProjectSn, project.getProjectSn())); diff --git a/src/main/java/com/zhgd/xmgl/util/HikvisionUtil.java b/src/main/java/com/zhgd/xmgl/util/HikvisionUtil.java index 54c81a90d..182068a98 100644 --- a/src/main/java/com/zhgd/xmgl/util/HikvisionUtil.java +++ b/src/main/java/com/zhgd/xmgl/util/HikvisionUtil.java @@ -14,7 +14,6 @@ import com.zhgd.xmgl.modules.basicdata.mapper.HikvisionRequestRetryMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.transaction.annotation.Transactional; import java.util.HashMap; import java.util.Map; @@ -47,7 +46,8 @@ public class HikvisionUtil { Map headers = new HashMap(); headers.put("Accept", "*/*"); headers.put("Content-Type", "application/json"); - Request request = new Request(Method.POST_STRING, host, path, appKey, appSecret, Constants.DEFAULT_TIMEOUT); + //Request request = new Request(Method.POST_STRING, host, path, appKey, appSecret, Constants.DEFAULT_TIMEOUT); + Request request = new Request(Method.POST_STRING, host, path, appKey, appSecret, Constants.DEFAULT_TIMEOUT * 10); request.setHeaders(headers); request.setQuerys(querys); request.setStringBody(body);