|
@@ -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();
|