From 973db3d9d601e538e2dca651fd16af53908faffb Mon Sep 17 00:00:00 2001
From: Administrator <1144154118@qq.com>
Date: 星期四, 10 八月 2023 13:28:35 +0800
Subject: [PATCH] 日历
---
ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java | 205 +++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 181 insertions(+), 24 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java b/ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java
index b5cd85b..d6ab9f7 100644
--- a/ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java
@@ -2,18 +2,22 @@
import java.util.List;
+import com.github.pagehelper.PageHelper;
import com.ruoyi.app.task.domain.ArdAppTaskDetail;
+import com.ruoyi.app.taskdetail.domain.ArdAppTaskDetailPic;
+import com.ruoyi.app.taskdetail.mapper.ArdAppTaskDetailPicMapper;
import com.ruoyi.app.tasktext.domain.ArdAppTaskText;
import com.ruoyi.app.tasktext.mapper.ArdAppTaskTextMapper;
import com.ruoyi.common.annotation.DataScope;
+import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.DateUtils;
-
import com.ruoyi.common.utils.uuid.IdUtils;
-import com.ruoyi.common.utils.uuid.UUID;
-import org.springframework.beans.factory.annotation.Autowired;
+import com.ruoyi.system.mapper.SysUserMapper;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
+import java.util.Optional;
+import java.util.stream.Collectors;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.SecurityUtils;
@@ -34,9 +38,13 @@
@Service
public class ArdAppTaskServiceImpl implements IArdAppTaskService {
@Resource
+ ArdAppTaskDetailPicMapper ardAppTaskDetailPicMapper;
+ @Resource
private ArdAppTaskMapper ardAppTaskMapper;
@Resource
private ArdAppTaskTextMapper ardAppTaskTextMapper;
+ @Resource
+ private SysUserMapper sysUserMapper;
/**
* 鏌ヨapp浠诲姟绠$悊
@@ -46,7 +54,43 @@
*/
@Override
public ArdAppTask selectArdAppTaskById(String id) {
- return ardAppTaskMapper.selectArdAppTaskById(id);
+ ArdAppTask ardAppTask = ardAppTaskMapper.selectArdAppTaskById(id);
+ if(StringUtils.isNull(ardAppTask))
+ {
+ return null;
+ }
+ List<ArdAppTaskDetail> ardAppTaskDetailList = ardAppTask.getArdAppTaskDetailList();
+ if(ardAppTaskDetailList.size()>0)
+ {
+ ardAppTaskDetailList = ardAppTaskDetailList.stream()
+ .collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new java.util.TreeSet<>(java.util.Comparator.comparing(ArdAppTaskDetail::getName))), ArrayList::new));
+ ardAppTask.setArdAppTaskDetailList(ardAppTaskDetailList);
+ }
+
+ List<String> userIds = ardAppTaskMapper.selectArdAppTaskDetailUserIdsByTaskId(id);
+ if (userIds.size() > 0) {
+ ardAppTask.setUserIds(userIds);
+ List<SysUser> sysUserList=new ArrayList<>();
+ for (String userId : userIds) {
+ SysUser sysUser = sysUserMapper.selectUserById(userId);
+ sysUserList.add(sysUser);
+ }
+ ardAppTask.setSysUserList(sysUserList);
+
+ }
+ return ardAppTask;
+ }
+
+ @Override
+ public ArdAppTaskDetail selectArdAppTaskDetailById(String id) {
+ ArdAppTaskDetail appTaskDetail = ardAppTaskMapper.selectArdAppTaskDetailById(id);
+ ArdAppTaskDetailPic ardAppTaskDetailPic = new ArdAppTaskDetailPic();
+ ardAppTaskDetailPic.setTaskDetailId(id);
+ List<ArdAppTaskDetailPic> ardAppTaskDetailPicList = ardAppTaskDetailPicMapper.selectArdAppTaskDetailPicList(ardAppTaskDetailPic);
+ if (ardAppTaskDetailPicList.size() > 0) {
+ appTaskDetail.setArdAppTaskDetailPic(ardAppTaskDetailPicList);
+ }
+ return appTaskDetail;
}
/**
@@ -56,9 +100,46 @@
* @return app浠诲姟绠$悊
*/
@Override
- @DataScope(deptAlias = "d", userAlias = "u")
public List<ArdAppTask> selectArdAppTaskList(ArdAppTask ardAppTask) {
- return ardAppTaskMapper.selectArdAppTaskList(ardAppTask);
+ List<ArdAppTask> parentList = ardAppTaskMapper.selectArdAppTaskList(ardAppTask);
+
+ if(StringUtils.isNotNull(ardAppTask.getAppUserId())) {
+ //濡傛灉app鐢ㄦ埛id涓嶄负绌�,鏌ヨ鍑烘墍鏈変换鍔$殑瀛愪换鍔″垪琛�
+ for(ArdAppTask appTask:parentList)
+ {
+ List<ArdAppTaskDetail> ardAppTaskDetails = ardAppTaskMapper.selectArdAppTaskDetailListByTaskId(appTask.getId());
+ appTask.setArdAppTaskDetailList(ardAppTaskDetails);
+ }
+ //閫氳繃app鐢ㄦ埛id杩囨护瀛愪换鍔″垪琛ㄦ潵杩囨护鍑虹埗浠诲姟鍒楄〃
+ parentList = parentList.stream()
+ .filter(parent -> parent.getArdAppTaskDetailList().stream().anyMatch(child -> child.getUserId().equals(ardAppTask.getAppUserId())))
+ .collect(Collectors.toList());
+ }
+ return parentList;
+ }
+
+ /**
+ * 鏌ヨapp浠诲姟璇︽儏绠$悊鍒楄〃
+ *
+ * @param ardAppTask app浠诲姟瀵硅薄
+ * @return app浠诲姟璇︽儏鍒楄〃
+ */
+ @Override
+ public List<ArdAppTask> selectArdAppTaskListWithDetail(ArdAppTask ardAppTask) {
+ List<ArdAppTask> list = ardAppTaskMapper.selectArdAppTaskListWithDetail(ardAppTask);
+ return list;
+ }
+
+ @Override
+ public List<ArdAppTask> selectArdAppTaskListWithDetailById(ArdAppTask ardAppTask) {
+ List<ArdAppTask> list = ardAppTaskMapper.selectArdAppTaskListWithDetail(ardAppTask);
+ for(ArdAppTaskDetail detail : list.get(0).getArdAppTaskDetailList()) {
+ ArdAppTaskDetailPic ardAppTaskDetailPic =new ArdAppTaskDetailPic();
+ ardAppTaskDetailPic.setTaskDetailId(detail.getId());
+ List<ArdAppTaskDetailPic> ardAppTaskDetailPicList = ardAppTaskDetailPicMapper.selectArdAppTaskDetailPicList(ardAppTaskDetailPic);
+ detail.setArdAppTaskDetailPic(ardAppTaskDetailPicList);
+ }
+ return list;
}
/**
@@ -72,7 +153,7 @@
public int insertArdAppTask(ArdAppTask ardAppTask) {
ardAppTask.setId(IdUtils.simpleUUID());
ardAppTask.setUserId(SecurityUtils.getUserId());
- ardAppTask.setCreateBy(SecurityUtils.getUsername());
+ ardAppTask.setCreateBy(SecurityUtils.getLoginUser().getUser().getNickName());
ardAppTask.setCreateTime(DateUtils.getNowDate());
int rows = ardAppTaskMapper.insertArdAppTask(ardAppTask);
insertArdAppTaskPic(ardAppTask);
@@ -92,8 +173,7 @@
public int updateArdAppTask(ArdAppTask ardAppTask) {
ardAppTask.setUpdateBy(SecurityUtils.getUsername());
ardAppTask.setUpdateTime(DateUtils.getNowDate());
- ardAppTaskMapper.deleteArdAppTaskPicByTaskId(ardAppTask.getId());
- ardAppTaskMapper.deleteArdAppTaskDetailByTaskId(ardAppTask.getId());
+
insertArdAppTaskPic(ardAppTask);
insertArdAppTaskDetail(ardAppTask);
return ardAppTaskMapper.updateArdAppTask(ardAppTask);
@@ -133,8 +213,10 @@
*/
public void insertArdAppTaskPic(ArdAppTask ardAppTask) {
List<ArdAppTaskPic> ardAppTaskPicList = ardAppTask.getArdAppTaskPicList();
- String id = ardAppTask.getId();
if (StringUtils.isNotNull(ardAppTaskPicList)) {
+ ardAppTaskMapper.deleteArdAppTaskPicByTaskId(ardAppTask.getId());
+ String id = ardAppTask.getId();
+
List<ArdAppTaskPic> list = new ArrayList<ArdAppTaskPic>();
for (ArdAppTaskPic ardAppTaskPic : ardAppTaskPicList) {
ardAppTaskPic.setId(IdUtils.simpleUUID());
@@ -153,20 +235,29 @@
* @param ardAppTask app浠诲姟绠$悊瀵硅薄
*/
public void insertArdAppTaskDetail(ArdAppTask ardAppTask) {
- List<String> userIds = ardAppTask.getUserIds();
- for (String userId : userIds) {
- List<ArdAppTaskDetail> ardAppTaskDetailList = ardAppTask.getArdAppTaskDetailList();
- String id = ardAppTask.getId();
- if (StringUtils.isNotNull(ardAppTaskDetailList)) {
- List<ArdAppTaskDetail> list = new ArrayList<ArdAppTaskDetail>();
- for (ArdAppTaskDetail ardAppTaskDetail : ardAppTaskDetailList) {
- ardAppTaskDetail.setId(IdUtils.simpleUUID());
- ardAppTaskDetail.setTaskId(id);
- ardAppTaskDetail.setUserId(userId);
- list.add(ardAppTaskDetail);
- }
- if (list.size() > 0) {
- ardAppTaskMapper.batchArdAppTaskDetail(list);
+ List<ArdAppTaskDetail> ardAppTaskDetailList = ardAppTask.getArdAppTaskDetailList();
+ if (StringUtils.isNotNull(ardAppTaskDetailList)) {
+ if (ardAppTaskDetailList.size() > 0) {
+ List<String> userIds = ardAppTask.getUserIds();
+ if (userIds.size() > 0) {
+ ardAppTaskMapper.deleteArdAppTaskDetailByTaskId(ardAppTask.getId());
+ for (String userId : userIds) {
+ String id = ardAppTask.getId();
+ if (StringUtils.isNotNull(ardAppTaskDetailList)) {
+ List<ArdAppTaskDetail> list = new ArrayList<ArdAppTaskDetail>();
+ for (ArdAppTaskDetail ardAppTaskDetail : ardAppTaskDetailList) {
+ ardAppTaskDetail.setId(IdUtils.simpleUUID());
+ ardAppTaskDetail.setStatus("0");
+ ardAppTaskDetail.setTaskId(id);
+ ardAppTaskDetail.setUserId(userId);
+ list.add(ardAppTaskDetail);
+ }
+ if (list.size() > 0) {
+
+ ardAppTaskMapper.batchArdAppTaskDetail(list);
+ }
+ }
+ }
}
}
}
@@ -180,6 +271,9 @@
public void insertArdAppTaskText(ArdAppTask ardAppTask) {
String userId = ardAppTask.getUserId();
String text = ardAppTask.getText();
+ if (StringUtils.isEmpty(text)) {
+ return;
+ }
ArdAppTaskText ardAppTaskText = new ArdAppTaskText();
ardAppTaskText.setId(IdUtils.simpleUUID());
ardAppTaskText.setUserId(userId);
@@ -189,4 +283,67 @@
ardAppTaskTextMapper.insertArdAppTaskText(ardAppTaskText);
}
}
+
+ /**
+ * 淇敼app浠诲姟璇︽儏
+ *
+ * @param ardAppTaskDetail app浠诲姟璇︽儏瀵硅薄
+ */
+ @Override
+ public int updateArdAppTaskDetail(ArdAppTaskDetail ardAppTaskDetail) {
+ ardAppTaskDetail.setClockInTime(DateUtils.getNowDate());
+ insertArdAppTaskPic(ardAppTaskDetail);
+ return ardAppTaskMapper.updateArdAppTaskDetail(ardAppTaskDetail);
+ }
+
+ @Override
+ public int updateArdAppTaskDetailView(ArdAppTaskDetail ardAppTaskDetail) {
+ ardAppTaskDetail.setViewTime(DateUtils.getNowDate());
+ return ardAppTaskMapper.updateArdAppTaskDetailView(ardAppTaskDetail);
+ }
+
+ /**
+ * 鏂板app浠诲姟璇︽儏鍥剧墖淇℃伅
+ *
+ * @param ardAppTaskDetail app浠诲姟璇︽儏瀵硅薄
+ */
+ public void insertArdAppTaskPic(ArdAppTaskDetail ardAppTaskDetail) {
+ List<ArdAppTaskDetailPic> ardAppTaskDetailPicList = ardAppTaskDetail.getArdAppTaskDetailPic();
+ String detailId = ardAppTaskDetail.getId();
+ if (StringUtils.isNotNull(ardAppTaskDetailPicList)) {
+ ardAppTaskMapper.deleteArdAppTaskDetailPicByTaskDetailId(detailId);
+ List<ArdAppTaskDetailPic> list = new ArrayList<ArdAppTaskDetailPic>();
+ for (ArdAppTaskDetailPic ardAppTaskDetailPic : ardAppTaskDetailPicList) {
+ ardAppTaskDetailPic.setId(IdUtils.simpleUUID());
+ ardAppTaskDetailPic.setTaskDetailId(detailId);
+ list.add(ardAppTaskDetailPic);
+ }
+ if (list.size() > 0) {
+ ardAppTaskMapper.batchArdAppTaskDetailPic(list);
+ }
+ }
+ }
+
+ @Override
+ public ArdAppTask selectNewArdAppTaskByUserId(String userId) {
+ ArdAppTask ardAppTask = ardAppTaskMapper.selectNewArdAppTaskByUserId(userId);
+ if (StringUtils.isNotNull(ardAppTask)) {
+ ArdAppTaskDetail detail = new ArdAppTaskDetail();
+ detail.setViewFlag("1");
+ detail.setTaskId(ardAppTask.getId());
+ int i = ardAppTaskMapper.updateArdAppTaskDetailByTaskId(detail);
+ }
+ return ardAppTask;
+ }
+
+ /**
+ * 鏌ヨ宸插脊绐椾絾鏈鐨勪换鍔℃暟閲�
+ *
+ * @param userId app鐢ㄦ埛Id
+ * @return 缁撴灉
+ */
+ @Override
+ public int selectUnreadArdAppTaskCount(String userId) {
+ return ardAppTaskMapper.selectUnreadArdAppTaskCount(userId);
+ }
}
--
Gitblit v1.9.3