From 9bc94f1705dc57b63f67c7a9dc3416f8ef5e7bc2 Mon Sep 17 00:00:00 2001
From: zhaoyz <11@11.com>
Date: Wed, 24 Apr 2024 14:08:36 +0800
Subject: [PATCH] =?UTF-8?q?=E6=97=A5=E5=B8=B8=E8=AE=A1=E5=88=92=E5=8A=9F?=
=?UTF-8?q?=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
common/common-bom/pom.xml | 5 ++
.../controller/DailyPlanController.java | 36 ++++++++--
.../com/rax/dailyplan/dto/DailyPlanDTO.java | 10 +--
.../com/rax/dailyplan/entity/DailyPlan.java | 14 +++-
.../rax/dailyplan/mapper/DailyPlanMapper.java | 9 +++
.../dailyplan/service/DailyPlanService.java | 33 +++++++++-
.../service/impl/DailyPlanServiceImpl.java | 59 ++++++++++++++++-
.../main/resources/mapper/DailyPlanMapper.xml | 65 +++++++++++++++++++
upms/upms-biz/pom.xml | 4 ++
9 files changed, 217 insertions(+), 18 deletions(-)
create mode 100644 daily-plan/src/main/resources/mapper/DailyPlanMapper.xml
diff --git a/common/common-bom/pom.xml b/common/common-bom/pom.xml
index d739eac..48a7513 100644
--- a/common/common-bom/pom.xml
+++ b/common/common-bom/pom.xml
@@ -112,6 +112,11 @@
vital-signs
${common.version}
+
+ com.rax
+ daily-plan
+ ${common.version}
+
com.mysql
mysql-connector-j
diff --git a/daily-plan/src/main/java/com/rax/dailyplan/controller/DailyPlanController.java b/daily-plan/src/main/java/com/rax/dailyplan/controller/DailyPlanController.java
index 29d983e..f4262c5 100644
--- a/daily-plan/src/main/java/com/rax/dailyplan/controller/DailyPlanController.java
+++ b/daily-plan/src/main/java/com/rax/dailyplan/controller/DailyPlanController.java
@@ -1,23 +1,47 @@
package com.rax.dailyplan.controller;
import com.rax.common.core.util.R;
+import com.rax.common.log.annotation.SysLog;
import com.rax.dailyplan.dto.DailyPlanDTO;
import com.rax.dailyplan.service.DailyPlanService;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.http.HttpHeaders;
+import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/dailyPlan")
+@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
public class DailyPlanController {
@Autowired
private DailyPlanService dailyPlanService;
- @PostMapping("/addDailyPlan")
- public R addDailyPlan(DailyPlanDTO dailyPlanDTO) {
- return dailyPlanService.addDailyPlan(dailyPlanDTO);
+ @SysLog("添加更新日常计划")
+ @PostMapping("/saveOrUpdate")
+ public R saveOrUpdate(DailyPlanDTO dailyPlanDTO) {
+ return dailyPlanService.saveOrUpdate(dailyPlanDTO);
+ }
+
+ @PostMapping("/getListByDate")
+ public R getListByDate(String date) {
+ return dailyPlanService.getListByDate(date);
+ }
+
+ @SysLog("日常计划删除")
+ @PostMapping("/deleteById")
+ public R deleteById(String id) {
+ return dailyPlanService.deleteById(id);
+ }
+
+ @PostMapping("/getPlanDateList")
+ public R getPlanDateList(String startDate, String endDate) {
+ return dailyPlanService.getPlanDateList(startDate, endDate);
+ }
+
+ @PostMapping("/getTodoCountByDate")
+ public R getTodoCountByDate(String date) {
+ return dailyPlanService.getTodoCountByDate(date);
}
}
diff --git a/daily-plan/src/main/java/com/rax/dailyplan/dto/DailyPlanDTO.java b/daily-plan/src/main/java/com/rax/dailyplan/dto/DailyPlanDTO.java
index 30460c3..6847d42 100644
--- a/daily-plan/src/main/java/com/rax/dailyplan/dto/DailyPlanDTO.java
+++ b/daily-plan/src/main/java/com/rax/dailyplan/dto/DailyPlanDTO.java
@@ -8,14 +8,17 @@ import lombok.Data;
@Schema(description = "日常计划")
public class DailyPlanDTO {
+ @Schema(description = "主键")
+ private String id;
+
@Schema(description = "标题")
private String title;
@Schema(description = "计划类型")
private String type;
- @Schema(description = "计划状态,已处理:1,未处理:0")
- private Boolean status;
+ @Schema(description = "计划状态,已处理,未处理")
+ private String status;
@Schema(description = "日期")
private String date;
@@ -25,7 +28,4 @@ public class DailyPlanDTO {
@Schema(description = "内容")
private String content;
-
- @Schema(description = "删除标记,1:已删除,0:正常")
- private String delFlag;
}
diff --git a/daily-plan/src/main/java/com/rax/dailyplan/entity/DailyPlan.java b/daily-plan/src/main/java/com/rax/dailyplan/entity/DailyPlan.java
index 1970e59..7c9fcca 100644
--- a/daily-plan/src/main/java/com/rax/dailyplan/entity/DailyPlan.java
+++ b/daily-plan/src/main/java/com/rax/dailyplan/entity/DailyPlan.java
@@ -5,15 +5,17 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
+import java.sql.Timestamp;
@Data
@Schema(description = "日常计划")
+@TableName(value = "sys_daily_plan")
public class DailyPlan implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(type = IdType.ASSIGN_ID)
@Schema(description = "id")
- private Long id;
+ private String id;
@Schema(description = "标题")
private String title;
@@ -21,8 +23,8 @@ public class DailyPlan implements Serializable {
@Schema(description = "计划类型")
private String type;
- @Schema(description = "计划状态,已处理:1,未处理:0")
- private Boolean status;
+ @Schema(description = "计划状态,已处理,未处理")
+ private String status;
@Schema(description = "日期")
private String date;
@@ -44,4 +46,10 @@ public class DailyPlan implements Serializable {
@Schema(description = "删除标记,1:已删除,0:正常")
private String delFlag;
+ @Schema(description = "创建时间")
+ private String createTime;
+
+ @Schema(description = "更新时间")
+ private String updateTime;
+
}
diff --git a/daily-plan/src/main/java/com/rax/dailyplan/mapper/DailyPlanMapper.java b/daily-plan/src/main/java/com/rax/dailyplan/mapper/DailyPlanMapper.java
index 587fe6c..fc44df3 100644
--- a/daily-plan/src/main/java/com/rax/dailyplan/mapper/DailyPlanMapper.java
+++ b/daily-plan/src/main/java/com/rax/dailyplan/mapper/DailyPlanMapper.java
@@ -1,9 +1,18 @@
package com.rax.dailyplan.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.rax.dailyplan.dto.DailyPlanDTO;
import com.rax.dailyplan.entity.DailyPlan;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
@Mapper
public interface DailyPlanMapper extends BaseMapper {
+ List getListByDate(@Param("date") String date, @Param("username") String username);
+
+ List getPlanDateList(@Param("startDate") String startDate, @Param("endDate") String endDate, @Param("username") String username);
+
+ String getTodoCountByDate(@Param("username") String username, @Param("date") String date);
}
diff --git a/daily-plan/src/main/java/com/rax/dailyplan/service/DailyPlanService.java b/daily-plan/src/main/java/com/rax/dailyplan/service/DailyPlanService.java
index 6bde59a..aac33db 100644
--- a/daily-plan/src/main/java/com/rax/dailyplan/service/DailyPlanService.java
+++ b/daily-plan/src/main/java/com/rax/dailyplan/service/DailyPlanService.java
@@ -8,9 +8,40 @@ import com.rax.dailyplan.entity.DailyPlan;
public interface DailyPlanService extends IService {
/**
+ * 添加日计划
*
* @param dailyPlanDTO
* @return
*/
- R addDailyPlan(DailyPlanDTO dailyPlanDTO);
+ R saveOrUpdate(DailyPlanDTO dailyPlanDTO);
+
+ /**
+ * 获取某天的日计划
+ *
+ * @param date
+ * @return
+ */
+ R getListByDate(String date);
+
+ /**
+ * 根据id删除日常计划
+ * @param id
+ * @return
+ */
+ R deleteById(String id);
+
+ /**
+ * 根据开始和结束时间查询出该时间段内有任务的时间。
+ * @param startDate
+ * @param endDate
+ * @return
+ */
+ R getPlanDateList(String startDate, String endDate);
+
+ /**
+ *
+ * @param date
+ * @return
+ */
+ R getTodoCountByDate(String date);
}
diff --git a/daily-plan/src/main/java/com/rax/dailyplan/service/impl/DailyPlanServiceImpl.java b/daily-plan/src/main/java/com/rax/dailyplan/service/impl/DailyPlanServiceImpl.java
index 0dc4b8a..f46c70e 100644
--- a/daily-plan/src/main/java/com/rax/dailyplan/service/impl/DailyPlanServiceImpl.java
+++ b/daily-plan/src/main/java/com/rax/dailyplan/service/impl/DailyPlanServiceImpl.java
@@ -1,14 +1,21 @@
package com.rax.dailyplan.service.impl;
+import cn.hutool.core.date.DateUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.rax.common.core.util.R;
+import com.rax.common.security.service.RaxUser;
import com.rax.dailyplan.dto.DailyPlanDTO;
import com.rax.dailyplan.entity.DailyPlan;
import com.rax.dailyplan.mapper.DailyPlanMapper;
import com.rax.dailyplan.service.DailyPlanService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
+
+import java.util.List;
@Service
public class DailyPlanServiceImpl extends ServiceImpl implements DailyPlanService {
@@ -17,10 +24,56 @@ public class DailyPlanServiceImpl extends ServiceImpl listByDate = dailyPlanMapper.getListByDate(date, user.getUsername());
+ return R.ok(listByDate);
+ } else {
+ return R.failed("请传入日期");
+ }
+ }
+
+ @Override
+ public R deleteById(String id) {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("id", id);
+ RaxUser user = (RaxUser) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
+ queryWrapper.eq("creator", user.getUsername());
+ boolean b = remove(queryWrapper);
+ return b ? R.ok(b) : R.failed("删除失败");
+ }
+
+ @Override
+ public R getPlanDateList(String startDate, String endDate) {
+ RaxUser user = (RaxUser) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
+ List planDateList = dailyPlanMapper.getPlanDateList(startDate, endDate, user.getUsername());
+ return R.ok(planDateList);
+ }
+
+ @Override
+ public R getTodoCountByDate(String date) {
+ RaxUser user = (RaxUser) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
+ String count = dailyPlanMapper.getTodoCountByDate(user.getUsername(), date);
+ return R.ok(count);
}
}
diff --git a/daily-plan/src/main/resources/mapper/DailyPlanMapper.xml b/daily-plan/src/main/resources/mapper/DailyPlanMapper.xml
new file mode 100644
index 0000000..72371c9
--- /dev/null
+++ b/daily-plan/src/main/resources/mapper/DailyPlanMapper.xml
@@ -0,0 +1,65 @@
+
+
+
+
+ id,
+ title,
+ type,
+ status,
+ date,
+ time,
+ content
+
+
+
+
+ FROM sys_daily_plan
+
+ WHERE del_flag = 0
+
+ and creator = #{username}
+
+
+ AND date = #{date}
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/upms/upms-biz/pom.xml b/upms/upms-biz/pom.xml
index c62b626..8eb51bf 100644
--- a/upms/upms-biz/pom.xml
+++ b/upms/upms-biz/pom.xml
@@ -54,6 +54,10 @@
com.rax
vital-signs
+
+ com.rax
+ daily-plan
+
org.springdoc