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