From 00a54beec369d909375e6578bed8c9e57b4a9401 Mon Sep 17 00:00:00 2001 From: wxc <191104855@qq.com> Date: Mon, 26 May 2025 18:50:22 +0800 Subject: [PATCH] =?UTF-8?q?fit:=20=E7=9F=A5=E8=AF=86=E5=BA=93=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E6=8E=A5=E5=8F=A3=20fit:=20=E6=84=8F=E8=A7=81?= =?UTF-8?q?=E5=8F=8D=E9=A6=88=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sql/book.sql | 8 +++ sql/feedback.sql | 8 +++ .../mobileSupervision/BookController.java | 54 +++++++++++++++++++ .../mobileSupervision/FeedbackController.java | 36 +++++++++++++ .../biutag/supervision/flow/FlowService.java | 5 +- .../biutag/supervision/mapper/BookMapper.java | 8 +++ .../supervision/mapper/FeedbackMapper.java | 8 +++ .../biutag/supervision/pojo/entity/Book.java | 37 +++++++++++++ .../supervision/pojo/entity/Feedback.java | 35 ++++++++++++ .../pojo/param/BookQueryParam.java | 16 ++++++ .../supervision/service/BookService.java | 11 ++++ .../supervision/service/FeedbackService.java | 11 ++++ 12 files changed, 236 insertions(+), 1 deletion(-) create mode 100644 sql/book.sql create mode 100644 sql/feedback.sql create mode 100644 src/main/java/com/biutag/supervision/controller/mobileSupervision/BookController.java create mode 100644 src/main/java/com/biutag/supervision/controller/mobileSupervision/FeedbackController.java create mode 100644 src/main/java/com/biutag/supervision/mapper/BookMapper.java create mode 100644 src/main/java/com/biutag/supervision/mapper/FeedbackMapper.java create mode 100644 src/main/java/com/biutag/supervision/pojo/entity/Book.java create mode 100644 src/main/java/com/biutag/supervision/pojo/entity/Feedback.java create mode 100644 src/main/java/com/biutag/supervision/pojo/param/BookQueryParam.java create mode 100644 src/main/java/com/biutag/supervision/service/BookService.java create mode 100644 src/main/java/com/biutag/supervision/service/FeedbackService.java diff --git a/sql/book.sql b/sql/book.sql new file mode 100644 index 0000000..053da50 --- /dev/null +++ b/sql/book.sql @@ -0,0 +1,8 @@ +CREATE TABLE `book` ( + `id` int NOT NULL AUTO_INCREMENT, + `file_name` varchar(1000) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '文件名', + `file_path` varchar(1000) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '文件路径', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `crt_user` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; \ No newline at end of file diff --git a/sql/feedback.sql b/sql/feedback.sql new file mode 100644 index 0000000..9e78891 --- /dev/null +++ b/sql/feedback.sql @@ -0,0 +1,8 @@ +CREATE TABLE `feedback` ( + `id` int NOT NULL AUTO_INCREMENT, + `content` text COLLATE utf8mb4_general_ci COMMENT '内容', + `create_time` datetime DEFAULT NULL, + `crt_user` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人', + `crt_depart_name` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人所在单位', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='意见反馈'; \ No newline at end of file diff --git a/src/main/java/com/biutag/supervision/controller/mobileSupervision/BookController.java b/src/main/java/com/biutag/supervision/controller/mobileSupervision/BookController.java new file mode 100644 index 0000000..8faaa53 --- /dev/null +++ b/src/main/java/com/biutag/supervision/controller/mobileSupervision/BookController.java @@ -0,0 +1,54 @@ +package com.biutag.supervision.controller.mobileSupervision; + +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.biutag.supervision.common.UserContextHolder; +import com.biutag.supervision.pojo.Result; +import com.biutag.supervision.pojo.entity.Book; +import com.biutag.supervision.pojo.model.UserAuth; +import com.biutag.supervision.pojo.param.BookQueryParam; +import com.biutag.supervision.service.BookService; +import com.biutag.supervision.service.FileService; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.io.IOException; +import java.time.LocalDateTime; + +/** + * @author wxc + * @date 2025/5/23 + */ +@RequiredArgsConstructor +@RequestMapping("book") +@RestController +public class BookController { + + private final BookService bookService; + + private final FileService fileService; + + + @GetMapping + public Result> list(BookQueryParam queryParam) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.like(StrUtil.isNotBlank(queryParam.getFileName()), Book::getFileName, queryParam.getFileName()) + .orderByDesc(Book::getCreateTime); + return Result.success(bookService.page(Page.of(queryParam.getCurrent(), queryParam.getSize()), queryWrapper)); + } + + @PostMapping + public Result add(@RequestPart("file") MultipartFile file) throws IOException { + String filePath = fileService.upload(file); + Book book = new Book(); + book.setFileName(file.getOriginalFilename()); + book.setFilePath(filePath); + UserAuth user = UserContextHolder.getCurrentUser(); + book.setCrtUser(user.getNickName()); + book.setCreateTime(LocalDateTime.now()); + return Result.success(bookService.save(book)); + } + +} diff --git a/src/main/java/com/biutag/supervision/controller/mobileSupervision/FeedbackController.java b/src/main/java/com/biutag/supervision/controller/mobileSupervision/FeedbackController.java new file mode 100644 index 0000000..27f678e --- /dev/null +++ b/src/main/java/com/biutag/supervision/controller/mobileSupervision/FeedbackController.java @@ -0,0 +1,36 @@ +package com.biutag.supervision.controller.mobileSupervision; + +import com.biutag.supervision.common.UserContextHolder; +import com.biutag.supervision.pojo.Result; +import com.biutag.supervision.pojo.entity.Feedback; +import com.biutag.supervision.pojo.model.UserAuth; +import com.biutag.supervision.service.FeedbackService; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.time.LocalDateTime; + +/** + * @author wxc + * @date 2025/5/26 + */ +@RequiredArgsConstructor +@RestController +@RequestMapping("feedback") +public class FeedbackController { + + private final FeedbackService feedbackService; + + @PostMapping + public Result add(@RequestBody Feedback feedback) { + UserAuth user = UserContextHolder.getCurrentUser(); + feedback.setCreateTime(LocalDateTime.now()); + feedback.setCrtUser(user.getNickName()); + feedback.setCrtDepartName(user.getDepartName()); + return Result.success(feedbackService.save(feedback)); + } + +} diff --git a/src/main/java/com/biutag/supervision/flow/FlowService.java b/src/main/java/com/biutag/supervision/flow/FlowService.java index a74dcda..020c5cc 100644 --- a/src/main/java/com/biutag/supervision/flow/FlowService.java +++ b/src/main/java/com/biutag/supervision/flow/FlowService.java @@ -10,6 +10,7 @@ import com.biutag.supervision.pojo.entity.NegativeWork; import com.biutag.supervision.pojo.model.UserAuth; import com.biutag.supervision.service.NegativeHistoryService; import com.biutag.supervision.service.NegativeWorkService; +import com.biutag.supervision.service.SupDepartService; import com.biutag.supervision.util.JSON; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; @@ -28,6 +29,8 @@ public class FlowService { private final NegativeWorkService workService; + private final SupDepartService departService; + @Transactional(rollbackFor = Exception.class) public Boolean execute(ActionDto actionDto) { Action action = actions @@ -41,7 +44,7 @@ public class FlowService { NegativeHistory history = new NegativeHistory().setHistoryId(IdUtil.fastSimpleUUID()) .setNegativeId(actionDto.getNegativeId()) .setActionName(actionDto.getActionName()) - .setDepartName(work.getDepartName()) + .setDepartName(departService.getById(work.getDepartId()).getShortName()) .setCrtUser(user.getUserId()) .setCrtUserName(user.getUserName()) .setCrtName(user.getNickName()) diff --git a/src/main/java/com/biutag/supervision/mapper/BookMapper.java b/src/main/java/com/biutag/supervision/mapper/BookMapper.java new file mode 100644 index 0000000..6451db0 --- /dev/null +++ b/src/main/java/com/biutag/supervision/mapper/BookMapper.java @@ -0,0 +1,8 @@ +package com.biutag.supervision.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.biutag.supervision.pojo.entity.Book; + +public interface BookMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/src/main/java/com/biutag/supervision/mapper/FeedbackMapper.java b/src/main/java/com/biutag/supervision/mapper/FeedbackMapper.java new file mode 100644 index 0000000..eea17b8 --- /dev/null +++ b/src/main/java/com/biutag/supervision/mapper/FeedbackMapper.java @@ -0,0 +1,8 @@ +package com.biutag.supervision.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.biutag.supervision.pojo.entity.Feedback; + +public interface FeedbackMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/src/main/java/com/biutag/supervision/pojo/entity/Book.java b/src/main/java/com/biutag/supervision/pojo/entity/Book.java new file mode 100644 index 0000000..17a8753 --- /dev/null +++ b/src/main/java/com/biutag/supervision/pojo/entity/Book.java @@ -0,0 +1,37 @@ +package com.biutag.supervision.pojo.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Getter; +import lombok.Setter; + +import java.time.LocalDateTime; + +@Setter +@Getter +public class Book { + + // + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + // 文件名 + @TableField("file_name") + private String fileName; + + // 文件路径 + @TableField("file_path") + private String filePath; + + // 创建时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm") + @TableField("create_time") + private LocalDateTime createTime; + + // + @TableField("crt_user") + private String crtUser; + +} \ No newline at end of file diff --git a/src/main/java/com/biutag/supervision/pojo/entity/Feedback.java b/src/main/java/com/biutag/supervision/pojo/entity/Feedback.java new file mode 100644 index 0000000..96a89d5 --- /dev/null +++ b/src/main/java/com/biutag/supervision/pojo/entity/Feedback.java @@ -0,0 +1,35 @@ +package com.biutag.supervision.pojo.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Getter; +import lombok.Setter; + +import java.time.LocalDateTime; + +@Setter +@Getter +public class Feedback { + + // + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + // 内容 + @TableField("content") + private String content; + + // + @TableField("create_time") + private LocalDateTime createTime; + + // 创建人 + @TableField("crt_user") + private String crtUser; + + // 创建人所在单位 + @TableField("crt_depart_name") + private String crtDepartName; + +} \ No newline at end of file diff --git a/src/main/java/com/biutag/supervision/pojo/param/BookQueryParam.java b/src/main/java/com/biutag/supervision/pojo/param/BookQueryParam.java new file mode 100644 index 0000000..96a8073 --- /dev/null +++ b/src/main/java/com/biutag/supervision/pojo/param/BookQueryParam.java @@ -0,0 +1,16 @@ +package com.biutag.supervision.pojo.param; + +import lombok.Getter; +import lombok.Setter; + +/** + * @author wxc + * @date 2025/5/23 + */ +@Setter +@Getter +public class BookQueryParam extends BasePage { + + private String fileName; + +} diff --git a/src/main/java/com/biutag/supervision/service/BookService.java b/src/main/java/com/biutag/supervision/service/BookService.java new file mode 100644 index 0000000..c343741 --- /dev/null +++ b/src/main/java/com/biutag/supervision/service/BookService.java @@ -0,0 +1,11 @@ +package com.biutag.supervision.service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.biutag.supervision.pojo.entity.Book; +import com.biutag.supervision.mapper.BookMapper; +import org.springframework.stereotype.Service; + +@Service +public class BookService extends ServiceImpl { + +} diff --git a/src/main/java/com/biutag/supervision/service/FeedbackService.java b/src/main/java/com/biutag/supervision/service/FeedbackService.java new file mode 100644 index 0000000..6c4ab43 --- /dev/null +++ b/src/main/java/com/biutag/supervision/service/FeedbackService.java @@ -0,0 +1,11 @@ +package com.biutag.supervision.service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.biutag.supervision.pojo.entity.Feedback; +import com.biutag.supervision.mapper.FeedbackMapper; +import org.springframework.stereotype.Service; + +@Service +public class FeedbackService extends ServiceImpl { + +}