Explorar o código

Merge branch 'server-165' of uskycloud/usky-modules into master

gez hai 8 meses
pai
achega
d05727eebe

+ 1 - 0
service-iot/service-iot-biz/src/main/java/com/usky/iot/service/config/DingTalkAndMessage.java

@@ -276,6 +276,7 @@ public class DingTalkAndMessage {
         jsonObject.put("infoType", INFO_TYPE);
         jsonObject.put("id", newReport.getId());
         jsonObject.put("infoTypeName", INFO_TITLE);
+        jsonObject.put("userName", newReport.getCreateBy());
         if (userId != null && !userId.isEmpty()) {
             jsonObject.put("userIds", userId);
         }

+ 8 - 3
service-iot/service-iot-biz/src/main/java/com/usky/iot/service/impl/PmProjectServiceImpl.java

@@ -30,6 +30,7 @@ import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.stream.Collectors;
+import java.util.stream.IntStream;
 
 /**
  * <p>
@@ -484,9 +485,6 @@ public class PmProjectServiceImpl extends AbstractCrudService<PmProjectMapper, P
             endTime = LocalDate.now().minusDays(29);
         }
 
-            List<String> users = new ArrayList<>();
-            List<BigDecimal> workTime = new ArrayList<>();
-
             LambdaQueryWrapper<PmWorkReport> wrapper2 = Wrappers.lambdaQuery();
             wrapper2.select(PmWorkReport::getId);
             wrapper2.between(PmWorkReport::getReportDate, startTime, endTime);
@@ -528,6 +526,13 @@ public class PmProjectServiceImpl extends AbstractCrudService<PmProjectMapper, P
             totalWorkTime = totalWorkTime.add(userWorkTime);
         }
         workTimeCount.setUsers(users2);
+        if (reportIds.isEmpty()){
+            List<BigDecimal> workTime = IntStream.range(0, users2.size())
+                    .mapToObj(index -> BigDecimal.ZERO)
+                    .collect(Collectors.toList());
+            workTimeCount.setWorkTime(workTime);
+            return workTimeCount;
+        }
         workTimeCount.setWorkTime(workTime1);
 
         return workTimeCount;

+ 34 - 34
service-iot/service-iot-biz/src/main/java/com/usky/iot/service/impl/PmWorkContentServiceImpl.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.usky.common.core.bean.CommonPage;
+import com.usky.common.core.domain.R;
 import com.usky.common.core.exception.BusinessException;
 import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.common.security.utils.SecurityUtils;
@@ -55,6 +56,13 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
     @Autowired
     private PmProjectMapper pmProjectMapper;
 
+    /**
+     * @description: 删除报告内容
+     * @author: fu
+     * @date: 2024/8/7 17:48
+     * @param: [reportId]
+     * @return: void
+     **/
     @Override
     public void deleteContent(Integer reportId) {
         LambdaQueryWrapper<PmWorkContent> deleteWrapper = Wrappers.lambdaQuery();
@@ -109,9 +117,9 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
         LambdaQueryWrapper<PmWorkReport> reportQuery = Wrappers.lambdaQuery();
         reportQuery.select(PmWorkReport::getId)
                 .eq(PmWorkReport::getTenantId, tenantId)
-                .apply("FIND_IN_SET(" + userId + ", cc_to) > 0");
-        List<PmWorkReport> reportIds = pmWorkReportMapper.selectList(reportQuery);
-        return reportIds.stream().map(PmWorkReport::getId).collect(Collectors.toList());
+                .apply("FIND_IN_SET(" + userId + ", cc_to) > 0")
+                .orderByDesc(PmWorkReport::getReportDate);
+        return pmWorkReportMapper.selectList(reportQuery).stream().map(PmWorkReport::getId).collect(Collectors.toList());
     }
 
     /**
@@ -123,17 +131,11 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
      **/
     private List<Integer> sentOut() {
         Long userid = SecurityUtils.getUserId();
-        Integer tenantId = SecurityUtils.getTenantId();
         LambdaQueryWrapper<PmWorkReport> reportQuery = Wrappers.lambdaQuery();
         reportQuery.select(PmWorkReport::getId)
-                .eq(PmWorkReport::getTenantId, tenantId)
-                .eq(PmWorkReport::getSubmitterId, userid);
-        List<PmWorkReport> reportIds = pmWorkReportMapper.selectList(reportQuery);
-        List<Integer> rIds = new ArrayList<>();
-        for (PmWorkReport report : reportIds) {
-            rIds.add(report.getId());
-        }
-        return rIds;
+                .eq(PmWorkReport::getSubmitterId, userid)
+                .orderByDesc(PmWorkReport::getSubmitDate);
+        return  pmWorkReportMapper.selectList(reportQuery).stream().map(PmWorkReport::getId).collect(Collectors.toList());
     }
 
     /**
@@ -150,12 +152,7 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
         projectQuery.select(PmProject::getId)
                 .eq(PmProject::getTenantId, tenantId)
                 .eq(PmProject::getProjectHead, userId);
-        List<PmProject> projectIds = pmProjectMapper.selectList(projectQuery);
-        List<Integer> rIds = new ArrayList<>();
-        for (PmProject project : projectIds) {
-            rIds.add(project.getId());
-        }
-        return rIds;
+        return pmProjectMapper.selectList(projectQuery).stream().map(PmProject::getId).collect(Collectors.toList());
     }
 
     /**
@@ -278,15 +275,16 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
         List<PmWorkReport> reportList2 = new ArrayList<>();
         List<PmWorkContent> pmWorkContentList = new ArrayList<>();
         List<Long> userIds = new ArrayList<>();
-        if (reportId != null && reportId != 0) {
+        if (reportId != null && reportId > 0) {
             LambdaQueryWrapper<PmWorkReport> reportQuery = Wrappers.lambdaQuery();
             reportQuery.select(PmWorkReport::getId, PmWorkReport::getCoordinateWork, PmWorkReport::getTomorrowPlan, PmWorkReport::getCcTo, PmWorkReport::getSubmitterId,
                             PmWorkReport::getCreateTime, PmWorkReport::getReportDate)
                     .eq(PmWorkReport::getId, reportId);
             PmWorkReport report = pmWorkReportMapper.selectOne(reportQuery);
             if (report == null) {
-                throw new BusinessException("报告已经不存在了哟");
+                throw new BusinessException("该报告已被删除!");
             }
+
             LambdaQueryWrapper<PmWorkContent> contentQuery = Wrappers.lambdaQuery();
             contentQuery.select(PmWorkContent::getWorkContent, PmWorkContent::getWorkTime, PmWorkContent::getProjectName)
                     .eq(PmWorkContent::getReportId, reportId);
@@ -444,8 +442,8 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
      **/
     @Override
     public CommonPage<PmWorkReport> reportPage(Integer projectAscription, Integer pageNum, Integer pageSize, Integer reportId, String startDate, String endDate, Integer projectId) {
-        LocalDateTime startDateTime = null;
-        LocalDateTime endDateTime = null;
+        // LocalDateTime startDateTime = null;
+        // LocalDateTime endDateTime = null;
         LocalDate start = null;
         LocalDate end = null;
         List<Integer> reportIds = new ArrayList<>();
@@ -462,6 +460,7 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
             // endDateTime = end.atTime(23, 59, 59);
             LambdaQueryWrapper<PmWorkReport> reportQuery = Wrappers.lambdaQuery();
             reportQuery.select(PmWorkReport::getId)
+                    .eq(PmWorkReport::getReportStatus, 1)
                     .between(PmWorkReport::getReportDate, start, end);
             reportIds = pmWorkReportMapper.selectList(reportQuery).stream().map(PmWorkReport::getId).collect(Collectors.toList());
         }
@@ -474,18 +473,23 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
         }
 
         CommonPage<PmWorkReport> returnPage = new CommonPage<>(new ArrayList<>(), 0, pageSize, pageNum);
-        Integer tenantId = SecurityUtils.getTenantId();
+        List<PmWorkContent> pmWorkContentList = new ArrayList<>();
+        // Integer tenantId = SecurityUtils.getTenantId();
         Long userId = SecurityUtils.getUserId();
         List<Long> userIds = new ArrayList<>();
         List<Integer> receiveList = receive();
-        if (receiveList.isEmpty()) {
+        if (receiveList.isEmpty() && projectAscription == 2) {
             return returnPage;
         }
 
         LambdaQueryWrapper<PmWorkContent> contentLambdaQuery = Wrappers.lambdaQuery();
         contentLambdaQuery.select(PmWorkContent::getReportId, PmWorkContent::getWorkContent, PmWorkContent::getWorkTime, PmWorkContent::getProjectName);
-        if (reportId != null && reportId > 0) {
+        if (reportId != null && reportId >= 0) {
             contentLambdaQuery.eq(PmWorkContent::getReportId, reportId);
+            pmWorkContentList = pmWorkContentMapper.selectList(contentLambdaQuery);
+            if (pmWorkContentList.isEmpty()) {
+                throw new BusinessException("该报告已被删除!");
+            }
         } else {
             switch (projectAscription) {
                 case 1:
@@ -511,14 +515,12 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
             if (!reportIds.isEmpty()) {
                 contentLambdaQuery.in(PmWorkContent::getReportId, reportIds);
             }
-        }
-        List<PmWorkContent> pmWorkContentList = pmWorkContentMapper.selectList(contentLambdaQuery);
-        if (pmWorkContentList.isEmpty()) {
-            if (reportId != null && reportId > 0) {
-                throw new BusinessException("该报告已被删除!");
+            pmWorkContentList = pmWorkContentMapper.selectList(contentLambdaQuery);
+            if (pmWorkContentList.isEmpty()) {
+                return returnPage;
             }
-            return returnPage;
         }
+
         List<Integer> reportIds2 = pmWorkContentList.stream().distinct().map(PmWorkContent::getReportId).collect(Collectors.toList());
 
         LambdaQueryWrapper<PmWorkReport> reportQuery = Wrappers.lambdaQuery();
@@ -529,7 +531,7 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
             reportQuery.eq(PmWorkReport::getId, reportId);
         } else {
             reportQuery.in(PmWorkReport::getId, reportIds2)
-                    .orderByDesc(PmWorkReport::getCreateTime);
+                    .orderByDesc(PmWorkReport::getSubmitDate);
         }
         IPage<PmWorkReport> reportPage = pmWorkReportMapper.selectPage(new Page<>(pageNum, pageSize), reportQuery);
         List<PmWorkReport> reportList = reportPage.getRecords();
@@ -570,7 +572,6 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
             }
         }
 
-
         // 已读未读数量查询
         List<PmReceive> receives = receives(receiveList);
         List<Long> uId = new ArrayList<>();
@@ -579,7 +580,6 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
             uId.add(receiverId);
         }
 
-
         Set<Long> userIdSet = new HashSet<>();
         for (PmWorkReport report : reportList) {
             Long submitterId = report.getSubmitterId();