From d73277103269fe73f693424a5dff56de6862ec7a Mon Sep 17 00:00:00 2001 From: pan <380711010@qq.com> Date: Fri, 30 Aug 2024 19:47:45 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E6=96=B0=E5=A2=9E=E8=AF=84=E8=AE=BA?= =?UTF-8?q?=E3=80=81=E5=9B=9E=E5=A4=8D=E5=8A=9F=E8=83=BD=202=E3=80=81?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E5=8F=91=E5=B8=83=E6=9D=83=E9=99=90=E5=AE=8C?= =?UTF-8?q?=E5=96=84=E4=B8=80=E9=83=A8=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../document/DocumentCategoryController.java | 1 - .../document/DocumentController.java | 13 +- .../controller/system/SysUserController.java | 3 +- .../tool/DiscussionsController.java | 102 +++++++++++++ .../controller/tool/RepliesController.java | 104 +++++++++++++ .../web/controller/tool/ToolController.java | 2 + .../com/rzdata/web/domain/Discussions.java | 51 +++++++ .../java/com/rzdata/web/domain/Document.java | 39 +++-- .../java/com/rzdata/web/domain/Replies.java | 46 ++++++ .../main/java/com/rzdata/web/domain/Tool.java | 4 - .../rzdata/web/mapper/DiscussionsMapper.java | 62 ++++++++ .../com/rzdata/web/mapper/RepliesMapper.java | 62 ++++++++ .../web/service/IDiscussionsService.java | 62 ++++++++ .../rzdata/web/service/IRepliesService.java | 62 ++++++++ .../service/impl/DiscussionsServiceImpl.java | 142 ++++++++++++++++++ .../web/service/impl/RepliesServiceImpl.java | 108 +++++++++++++ .../web/service/impl/ToolServiceImpl.java | 2 + .../src/main/resources/application.yml | 8 +- .../resources/mapper/DiscussionsMapper.xml | 103 +++++++++++++ .../main/resources/mapper/DocumentMapper.xml | 10 +- .../main/resources/mapper/RepliesMapper.xml | 103 +++++++++++++ .../src/main/resources/mapper/ToolMapper.xml | 8 +- .../service/impl/SysDeptServiceImpl.java | 3 +- .../service/impl/SysUserServiceImpl.java | 1 - 24 files changed, 1069 insertions(+), 32 deletions(-) create mode 100644 tool-tech-admin/src/main/java/com/rzdata/web/controller/tool/DiscussionsController.java create mode 100644 tool-tech-admin/src/main/java/com/rzdata/web/controller/tool/RepliesController.java create mode 100644 tool-tech-admin/src/main/java/com/rzdata/web/domain/Discussions.java create mode 100644 tool-tech-admin/src/main/java/com/rzdata/web/domain/Replies.java create mode 100644 tool-tech-admin/src/main/java/com/rzdata/web/mapper/DiscussionsMapper.java create mode 100644 tool-tech-admin/src/main/java/com/rzdata/web/mapper/RepliesMapper.java create mode 100644 tool-tech-admin/src/main/java/com/rzdata/web/service/IDiscussionsService.java create mode 100644 tool-tech-admin/src/main/java/com/rzdata/web/service/IRepliesService.java create mode 100644 tool-tech-admin/src/main/java/com/rzdata/web/service/impl/DiscussionsServiceImpl.java create mode 100644 tool-tech-admin/src/main/java/com/rzdata/web/service/impl/RepliesServiceImpl.java create mode 100644 tool-tech-admin/src/main/resources/mapper/DiscussionsMapper.xml create mode 100644 tool-tech-admin/src/main/resources/mapper/RepliesMapper.xml diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/controller/document/DocumentCategoryController.java b/tool-tech-admin/src/main/java/com/rzdata/web/controller/document/DocumentCategoryController.java index da8098d..3b62910 100644 --- a/tool-tech-admin/src/main/java/com/rzdata/web/controller/document/DocumentCategoryController.java +++ b/tool-tech-admin/src/main/java/com/rzdata/web/controller/document/DocumentCategoryController.java @@ -107,7 +107,6 @@ public class DocumentCategoryController extends BaseController /** * 获取文档分类树列表 */ - @PreAuthorize("@ss.hasPermi('system:category:tree:list')") @GetMapping("/documentTree") public AjaxResult deptTree(DocumentCategory documentCategory) { diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/controller/document/DocumentController.java b/tool-tech-admin/src/main/java/com/rzdata/web/controller/document/DocumentController.java index 489706b..73ae114 100644 --- a/tool-tech-admin/src/main/java/com/rzdata/web/controller/document/DocumentController.java +++ b/tool-tech-admin/src/main/java/com/rzdata/web/controller/document/DocumentController.java @@ -10,6 +10,7 @@ import com.rzdata.common.utils.poi.ExcelUtil; import com.rzdata.web.domain.Document; import com.rzdata.web.service.IDocumentService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; @@ -31,6 +32,7 @@ public class DocumentController extends BaseController /** * 查询【文档资源信息】列表 */ + @PreAuthorize("@ss.hasPermi('document:list')") @GetMapping("/list") public TableDataInfo list(Document Document) { @@ -43,12 +45,13 @@ public class DocumentController extends BaseController * 导出【文档资源信息】列表 */ @Log(title = "【文档资源信息】", businessType = BusinessType.EXPORT) + @PreAuthorize("@ss.hasPermi('document:export')") @PostMapping("/export") - public void export(HttpServletResponse response, Document Document) + public void export(HttpServletResponse response, Document document) { - List list = documentService.selectDocumentList(Document); + List list = documentService.selectDocumentList(document); ExcelUtil util = new ExcelUtil(Document.class); - util.exportExcel(response, list, "【文档资源信息】数据"); + util.exportExcel(response, list, "【文档资源信息】数据", document.getExcludeFields()); } /** @@ -64,6 +67,7 @@ public class DocumentController extends BaseController * 新增【文档资源信息】 */ @Log(title = "【请填写功能名称】", businessType = BusinessType.INSERT) + @PreAuthorize("@ss.hasPermi('document:add')") @PostMapping public AjaxResult add(@RequestBody Document Document) { @@ -78,6 +82,7 @@ public class DocumentController extends BaseController * 修改【文档资源信息】 */ @Log(title = "【请填写功能名称】", businessType = BusinessType.UPDATE) + @PreAuthorize("@ss.hasPermi('document:edit')") @PutMapping public AjaxResult edit(@RequestBody Document Document) { @@ -88,6 +93,7 @@ public class DocumentController extends BaseController * 删除【文档资源信息】 */ @Log(title = "【逻辑删除-文档资源信息】", businessType = BusinessType.DELETE) + @PreAuthorize("@ss.hasPermi('document:remove')") @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable String[] ids) { @@ -98,6 +104,7 @@ public class DocumentController extends BaseController * 发布文档 */ @Log(title = "【发布逻辑】", businessType = BusinessType.UPDATE) + @PreAuthorize("@ss.hasPermi('document:push')") @PutMapping("/pushDoc/{ids}") public AjaxResult pushDoc(@PathVariable String[] ids) { diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/controller/system/SysUserController.java b/tool-tech-admin/src/main/java/com/rzdata/web/controller/system/SysUserController.java index 3a3c737..70ce37c 100644 --- a/tool-tech-admin/src/main/java/com/rzdata/web/controller/system/SysUserController.java +++ b/tool-tech-admin/src/main/java/com/rzdata/web/controller/system/SysUserController.java @@ -55,7 +55,6 @@ public class SysUserController extends BaseController /** * 获取用户列表 */ - @PreAuthorize("@ss.hasPermi('system:user:list')") @GetMapping("/list") public TableDataInfo list(SysUser user) { @@ -246,7 +245,7 @@ public class SysUserController extends BaseController /** * 获取部门树列表 */ - @PreAuthorize("@ss.hasPermi('system:user:list')") + //@PreAuthorize("@ss.hasPermi('system:user:list')") @GetMapping("/deptTree") public AjaxResult deptTree(SysDept dept) { diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/controller/tool/DiscussionsController.java b/tool-tech-admin/src/main/java/com/rzdata/web/controller/tool/DiscussionsController.java new file mode 100644 index 0000000..f82f0e1 --- /dev/null +++ b/tool-tech-admin/src/main/java/com/rzdata/web/controller/tool/DiscussionsController.java @@ -0,0 +1,102 @@ +package com.rzdata.web.controller.tool; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.rzdata.web.domain.Discussions; +import com.rzdata.web.service.IDiscussionsService; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.rzdata.common.annotation.Log; +import com.rzdata.common.core.controller.BaseController; +import com.rzdata.common.core.domain.AjaxResult; +import com.rzdata.common.enums.BusinessType; +import com.rzdata.common.utils.poi.ExcelUtil; +import com.rzdata.common.core.page.TableDataInfo; + +/** + * 讨论Controller + * + * @author panchichun + * @date 2024-08-30 + */ +@RestController +@RequestMapping("/discussions") +public class DiscussionsController extends BaseController +{ + @Autowired + private IDiscussionsService discussionsService; + + /** + * 查询讨论列表 + */ + @GetMapping("/list") + public TableDataInfo list(Discussions discussions) + { + List list = discussionsService.selectDiscussionsList(discussions); + return getDataTable(list); + } + + /** + * 导出讨论列表 + */ + @PreAuthorize("@ss.hasPermi('system:discussions:export')") + @Log(title = "讨论", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, Discussions discussions) + { + List list = discussionsService.selectDiscussionsList(discussions); + ExcelUtil util = new ExcelUtil(Discussions.class); + util.exportExcel(response, list, "讨论数据"); + } + + /** + * 获取讨论详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:discussions:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") String id) + { + return success(discussionsService.selectDiscussionsById(id)); + } + + /** + * 新增讨论 + */ + @Log(title = "讨论", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody Discussions discussions) + { + return toAjax(discussionsService.insertDiscussions(discussions)); + } + + /** + * 修改讨论 + */ + @PreAuthorize("@ss.hasPermi('system:discussions:edit')") + @Log(title = "讨论", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Discussions discussions) + { + return toAjax(discussionsService.updateDiscussions(discussions)); + } + + /** + * 删除讨论 + */ + @PreAuthorize("@ss.hasPermi('system:discussions:remove')") + @Log(title = "讨论", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable String[] ids) + { + return toAjax(discussionsService.deleteDiscussionsByIds(ids)); + } +} diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/controller/tool/RepliesController.java b/tool-tech-admin/src/main/java/com/rzdata/web/controller/tool/RepliesController.java new file mode 100644 index 0000000..8430c7d --- /dev/null +++ b/tool-tech-admin/src/main/java/com/rzdata/web/controller/tool/RepliesController.java @@ -0,0 +1,104 @@ +package com.rzdata.web.controller.tool; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.rzdata.web.domain.Replies; +import com.rzdata.web.service.IRepliesService; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.rzdata.common.annotation.Log; +import com.rzdata.common.core.controller.BaseController; +import com.rzdata.common.core.domain.AjaxResult; +import com.rzdata.common.enums.BusinessType; +import com.rzdata.common.utils.poi.ExcelUtil; +import com.rzdata.common.core.page.TableDataInfo; + +/** + * 回复Controller + * + * @author panchichun + * @date 2024-08-30 + */ +@RestController +@RequestMapping("/replies") +public class RepliesController extends BaseController +{ + @Autowired + private IRepliesService repliesService; + + /** + * 查询回复列表 + */ + @PreAuthorize("@ss.hasPermi('system:replies:list')") + @GetMapping("/list") + public TableDataInfo list(Replies replies) + { + startPage(); + List list = repliesService.selectRepliesList(replies); + return getDataTable(list); + } + + /** + * 导出回复列表 + */ + @PreAuthorize("@ss.hasPermi('system:replies:export')") + @Log(title = "回复", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, Replies replies) + { + List list = repliesService.selectRepliesList(replies); + ExcelUtil util = new ExcelUtil(Replies.class); + util.exportExcel(response, list, "回复数据"); + } + + /** + * 获取回复详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:replies:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") String id) + { + return success(repliesService.selectRepliesById(id)); + } + + /** + * 新增回复 + */ + @Log(title = "回复", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody Replies replies) + { + return toAjax(repliesService.insertReplies(replies)); + } + + /** + * 修改回复 + */ + @PreAuthorize("@ss.hasPermi('system:replies:edit')") + @Log(title = "回复", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Replies replies) + { + return toAjax(repliesService.updateReplies(replies)); + } + + /** + * 删除回复 + */ + @PreAuthorize("@ss.hasPermi('system:replies:remove')") + @Log(title = "回复", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable String[] ids) + { + return toAjax(repliesService.deleteRepliesByIds(ids)); + } +} diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/controller/tool/ToolController.java b/tool-tech-admin/src/main/java/com/rzdata/web/controller/tool/ToolController.java index 949ed17..708ee60 100644 --- a/tool-tech-admin/src/main/java/com/rzdata/web/controller/tool/ToolController.java +++ b/tool-tech-admin/src/main/java/com/rzdata/web/controller/tool/ToolController.java @@ -23,6 +23,7 @@ import com.rzdata.web.service.IUseApplyService; import com.rzdata.web.service.WorkflowService; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; @@ -59,6 +60,7 @@ public class ToolController extends BaseController /** * 查询工具信息列表 */ + @PreAuthorize("@ss.hasPermi('tool:list')") @GetMapping("/list") public TableDataInfo list(Tool tool) { diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/domain/Discussions.java b/tool-tech-admin/src/main/java/com/rzdata/web/domain/Discussions.java new file mode 100644 index 0000000..3f3b022 --- /dev/null +++ b/tool-tech-admin/src/main/java/com/rzdata/web/domain/Discussions.java @@ -0,0 +1,51 @@ +package com.rzdata.web.domain; + +import com.rzdata.common.annotation.Excel; +import com.rzdata.common.core.domain.BaseEntity; +import lombok.Data; + +import java.util.List; + +/** + * 讨论对象 t_discussions + * + * @author panchichun + * @date 2024-08-30 + */ +@Data +public class Discussions extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键 */ + private String id; + + /** 业务id */ + @Excel(name = "业务id") + private String businessId; + + /** 业务类型;(doc:文档,tool:工具) */ + @Excel(name = "业务类型;", readConverterExp = "d=oc:文档,tool:工具") + private String type; + + /** 内容 */ + @Excel(name = "内容") + private String content; + + /** 逻辑删除;(1:删除,0:未删除) */ + @Excel(name = "逻辑删除;", readConverterExp = "1=:删除,0:未删除") + private String isDelete; + + /** 创建人id */ + @Excel(name = "创建人id") + private String createById; + + /** 更新人id */ + @Excel(name = "更新人id") + private String updateById; + + private String nickName; + + + private List repliesList; +} diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/domain/Document.java b/tool-tech-admin/src/main/java/com/rzdata/web/domain/Document.java index 92e8bd8..5bae6e9 100644 --- a/tool-tech-admin/src/main/java/com/rzdata/web/domain/Document.java +++ b/tool-tech-admin/src/main/java/com/rzdata/web/domain/Document.java @@ -1,11 +1,13 @@ package com.rzdata.web.domain; +import com.fasterxml.jackson.annotation.JsonFormat; import com.rzdata.common.annotation.Excel; import com.rzdata.common.core.domain.BaseEntity; import lombok.Data; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; +import java.util.Date; import java.util.List; /** @@ -16,6 +18,7 @@ import java.util.List; */ @Data public class Document extends BaseEntity { + private static final long serialVersionUID = 1L; /** 主键 */ @@ -30,35 +33,41 @@ public class Document extends BaseEntity { private String docName; /** 文档类别 */ - @Excel(name = "文档类别") + @Excel(name = "类别", dictType="doc_class") private String docType; /** 文档负责人 */ - @Excel(name = "文档负责人") + @Excel(name = "负责人") private String docPrincipals; + /** 归属单位 **/ + @Excel(name = "归属单位") + private String docRespDeptName; + /** 文档归属部门 */ - @Excel(name = "文档归属部门") private String docRespDept; /** 文档来源 */ - @Excel(name = "文档来源") + @Excel(name = "来源", dictType="doc_source") private String docSource; + /** + * 工具名称 + */ + @Excel(name = "工具名称") + private String toolName; + /** 文档状态 */ - @Excel(name = "文档状态") + @Excel(name = "上传状态", dictType="doc_upload_status") private String docStatus; /** 文档地址 */ - @Excel(name = "文档地址") private String docUrl; /** 备注 */ - @Excel(name = "备注") private String remark; /** 文档分类id */ - @Excel(name = "文档分类id") private String docCategoryId; /** 创建人id */ @@ -76,13 +85,15 @@ public class Document extends BaseEntity { /** 关联工具id对象 */ private String toolId; - /** - * 工具名称 - */ - private String toolName; + /** 工具信息 **/ private Tool tool; - /** 文档部门名称 **/ - private String docRespDeptName; + /** 创建时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "创建时间", dateFormat="yyyy-MM-dd") + private Date createTime; + + + private List excludeFields; } diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/domain/Replies.java b/tool-tech-admin/src/main/java/com/rzdata/web/domain/Replies.java new file mode 100644 index 0000000..d6e605f --- /dev/null +++ b/tool-tech-admin/src/main/java/com/rzdata/web/domain/Replies.java @@ -0,0 +1,46 @@ +package com.rzdata.web.domain; + +import com.rzdata.common.annotation.Excel; +import com.rzdata.common.core.domain.BaseEntity; +import lombok.Data; + +import java.util.List; + +/** + * 回复对象 t_replies + * + * @author panchichun + * @date 2024-08-30 + */ +@Data +public class Replies extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键 */ + private String id; + + /** 讨论表id */ + @Excel(name = "讨论表id") + private String discussionId; + + /** 内容 */ + @Excel(name = "内容") + private String content; + + /** 逻辑删除;(1:删除,0:未删除) */ + @Excel(name = "逻辑删除;", readConverterExp = "1=:删除,0:未删除") + private String isDelete; + + /** 创建人id */ + @Excel(name = "创建人id") + private String createById; + + /** 更新人id */ + @Excel(name = "更新人id") + private String updateById; + + private String nickName; + + private List discussionIdList; +} diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/domain/Tool.java b/tool-tech-admin/src/main/java/com/rzdata/web/domain/Tool.java index c6761c6..ad5856b 100644 --- a/tool-tech-admin/src/main/java/com/rzdata/web/domain/Tool.java +++ b/tool-tech-admin/src/main/java/com/rzdata/web/domain/Tool.java @@ -1,13 +1,9 @@ package com.rzdata.web.domain; import com.rzdata.common.annotation.Excel; -import com.rzdata.common.annotation.Excels; import com.rzdata.common.core.domain.BaseEntity; -import com.rzdata.common.core.domain.entity.SysDept; import com.rzdata.web.domain.bo.BpmClientInputModelBo; import lombok.Data; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import java.util.List; diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/mapper/DiscussionsMapper.java b/tool-tech-admin/src/main/java/com/rzdata/web/mapper/DiscussionsMapper.java new file mode 100644 index 0000000..14aa0e8 --- /dev/null +++ b/tool-tech-admin/src/main/java/com/rzdata/web/mapper/DiscussionsMapper.java @@ -0,0 +1,62 @@ +package com.rzdata.web.mapper; + +import com.rzdata.web.domain.Discussions; + +import java.util.List; + +/** + * 讨论Mapper接口 + * + * @author panchichun + * @date 2024-08-30 + */ +public interface DiscussionsMapper +{ + /** + * 查询讨论 + * + * @param id 讨论主键 + * @return 讨论 + */ + public Discussions selectDiscussionsById(String id); + + /** + * 查询讨论列表 + * + * @param discussions 讨论 + * @return 讨论集合 + */ + public List selectDiscussionsList(Discussions discussions); + + /** + * 新增讨论 + * + * @param discussions 讨论 + * @return 结果 + */ + public int insertDiscussions(Discussions discussions); + + /** + * 修改讨论 + * + * @param discussions 讨论 + * @return 结果 + */ + public int updateDiscussions(Discussions discussions); + + /** + * 删除讨论 + * + * @param id 讨论主键 + * @return 结果 + */ + public int deleteDiscussionsById(String id); + + /** + * 批量删除讨论 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteDiscussionsByIds(String[] ids); +} diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/mapper/RepliesMapper.java b/tool-tech-admin/src/main/java/com/rzdata/web/mapper/RepliesMapper.java new file mode 100644 index 0000000..87896b2 --- /dev/null +++ b/tool-tech-admin/src/main/java/com/rzdata/web/mapper/RepliesMapper.java @@ -0,0 +1,62 @@ +package com.rzdata.web.mapper; + +import com.rzdata.web.domain.Replies; + +import java.util.List; + +/** + * 回复Mapper接口 + * + * @author panchichun + * @date 2024-08-30 + */ +public interface RepliesMapper +{ + /** + * 查询回复 + * + * @param id 回复主键 + * @return 回复 + */ + public Replies selectRepliesById(String id); + + /** + * 查询回复列表 + * + * @param replies 回复 + * @return 回复集合 + */ + public List selectRepliesList(Replies replies); + + /** + * 新增回复 + * + * @param replies 回复 + * @return 结果 + */ + public int insertReplies(Replies replies); + + /** + * 修改回复 + * + * @param replies 回复 + * @return 结果 + */ + public int updateReplies(Replies replies); + + /** + * 删除回复 + * + * @param id 回复主键 + * @return 结果 + */ + public int deleteRepliesById(String id); + + /** + * 批量删除回复 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteRepliesByIds(String[] ids); +} diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/service/IDiscussionsService.java b/tool-tech-admin/src/main/java/com/rzdata/web/service/IDiscussionsService.java new file mode 100644 index 0000000..40acbdf --- /dev/null +++ b/tool-tech-admin/src/main/java/com/rzdata/web/service/IDiscussionsService.java @@ -0,0 +1,62 @@ +package com.rzdata.web.service; + +import com.rzdata.web.domain.Discussions; + +import java.util.List; + +/** + * 讨论Service接口 + * + * @author panchichun + * @date 2024-08-30 + */ +public interface IDiscussionsService +{ + /** + * 查询讨论 + * + * @param id 讨论主键 + * @return 讨论 + */ + public Discussions selectDiscussionsById(String id); + + /** + * 查询讨论列表 + * + * @param discussions 讨论 + * @return 讨论集合 + */ + public List selectDiscussionsList(Discussions discussions); + + /** + * 新增讨论 + * + * @param discussions 讨论 + * @return 结果 + */ + public int insertDiscussions(Discussions discussions); + + /** + * 修改讨论 + * + * @param discussions 讨论 + * @return 结果 + */ + public int updateDiscussions(Discussions discussions); + + /** + * 批量删除讨论 + * + * @param ids 需要删除的讨论主键集合 + * @return 结果 + */ + public int deleteDiscussionsByIds(String[] ids); + + /** + * 删除讨论信息 + * + * @param id 讨论主键 + * @return 结果 + */ + public int deleteDiscussionsById(String id); +} diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/service/IRepliesService.java b/tool-tech-admin/src/main/java/com/rzdata/web/service/IRepliesService.java new file mode 100644 index 0000000..fe1dd09 --- /dev/null +++ b/tool-tech-admin/src/main/java/com/rzdata/web/service/IRepliesService.java @@ -0,0 +1,62 @@ +package com.rzdata.web.service; + +import com.rzdata.web.domain.Replies; + +import java.util.List; + +/** + * 回复Service接口 + * + * @author panchichun + * @date 2024-08-30 + */ +public interface IRepliesService +{ + /** + * 查询回复 + * + * @param id 回复主键 + * @return 回复 + */ + public Replies selectRepliesById(String id); + + /** + * 查询回复列表 + * + * @param replies 回复 + * @return 回复集合 + */ + public List selectRepliesList(Replies replies); + + /** + * 新增回复 + * + * @param replies 回复 + * @return 结果 + */ + public int insertReplies(Replies replies); + + /** + * 修改回复 + * + * @param replies 回复 + * @return 结果 + */ + public int updateReplies(Replies replies); + + /** + * 批量删除回复 + * + * @param ids 需要删除的回复主键集合 + * @return 结果 + */ + public int deleteRepliesByIds(String[] ids); + + /** + * 删除回复信息 + * + * @param id 回复主键 + * @return 结果 + */ + public int deleteRepliesById(String id); +} diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/service/impl/DiscussionsServiceImpl.java b/tool-tech-admin/src/main/java/com/rzdata/web/service/impl/DiscussionsServiceImpl.java new file mode 100644 index 0000000..83668f0 --- /dev/null +++ b/tool-tech-admin/src/main/java/com/rzdata/web/service/impl/DiscussionsServiceImpl.java @@ -0,0 +1,142 @@ +package com.rzdata.web.service.impl; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.lang.Snowflake; +import com.rzdata.common.constant.Constants; +import com.rzdata.common.utils.DateUtils; +import com.rzdata.common.utils.SecurityUtils; +import com.rzdata.web.domain.Discussions; +import com.rzdata.web.domain.Replies; +import com.rzdata.web.mapper.DiscussionsMapper; +import com.rzdata.web.service.IDiscussionsService; +import com.rzdata.web.service.IRepliesService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 讨论Service业务层处理 + * + * @author panchichun + * @date 2024-08-30 + */ +@Service +public class DiscussionsServiceImpl implements IDiscussionsService +{ + @Autowired + private DiscussionsMapper discussionsMapper; + + @Autowired + private Snowflake snowflake; + + @Autowired + private IRepliesService iRepliesService; + + /** + * 查询讨论 + * + * @param id 讨论主键 + * @return 讨论 + */ + @Override + public Discussions selectDiscussionsById(String id) + { + return discussionsMapper.selectDiscussionsById(id); + } + + /** + * 查询讨论列表 + * + * @param discussions 讨论 + * @return 讨论 + */ + @Override + public List selectDiscussionsList(Discussions discussions) + { + List discussionsList = discussionsMapper.selectDiscussionsList(discussions); + //组装回复对象数据 + assembleReplies(discussionsList); + return discussionsList; + } + + /** + * 组装回复对象数据 + * @param discussionsList + */ + private void assembleReplies(List discussionsList) { + List idList = discussionsList.stream().map(Discussions::getId).collect(Collectors.toList()); + Replies replies = new Replies(); + replies.setDiscussionIdList(idList); + List repliesList = iRepliesService.selectRepliesList(replies); + if(CollUtil.isNotEmpty(repliesList)){ + for (Discussions disItem : discussionsList) { + List addList = new ArrayList<>(); + for (Replies repItem : repliesList) { + if(repItem.getDiscussionId().equals(disItem.getId())){ + addList.add(repItem); + } + } + if(CollUtil.isNotEmpty(addList)){ + disItem.setRepliesList(addList); + } + } + } + } + + /** + * 新增讨论 + * + * @param discussions 讨论 + * @return 结果 + */ + @Override + public int insertDiscussions(Discussions discussions) + { + discussions.setId(String.valueOf(snowflake.nextId())); + discussions.setCreateTime(DateUtils.getNowDate()); + discussions.setCreateBy(SecurityUtils.getLoginUser().getUsername()); + discussions.setCreateById(String.valueOf(SecurityUtils.getLoginUser().getUserId())); + discussions.setIsDelete(Constants.STR_ZERO); + return discussionsMapper.insertDiscussions(discussions); + } + + /** + * 修改讨论 + * + * @param discussions 讨论 + * @return 结果 + */ + @Override + public int updateDiscussions(Discussions discussions) + { + discussions.setUpdateTime(DateUtils.getNowDate()); + return discussionsMapper.updateDiscussions(discussions); + } + + /** + * 批量删除讨论 + * + * @param ids 需要删除的讨论主键 + * @return 结果 + */ + @Override + public int deleteDiscussionsByIds(String[] ids) + { + return discussionsMapper.deleteDiscussionsByIds(ids); + } + + /** + * 删除讨论信息 + * + * @param id 讨论主键 + * @return 结果 + */ + @Override + public int deleteDiscussionsById(String id) + { + return discussionsMapper.deleteDiscussionsById(id); + } +} diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/service/impl/RepliesServiceImpl.java b/tool-tech-admin/src/main/java/com/rzdata/web/service/impl/RepliesServiceImpl.java new file mode 100644 index 0000000..42c39e3 --- /dev/null +++ b/tool-tech-admin/src/main/java/com/rzdata/web/service/impl/RepliesServiceImpl.java @@ -0,0 +1,108 @@ +package com.rzdata.web.service.impl; + +import java.util.Date; +import java.util.List; + +import cn.hutool.core.lang.Snowflake; +import com.rzdata.common.constant.Constants; +import com.rzdata.common.utils.DateUtils; +import com.rzdata.common.utils.SecurityUtils; +import com.rzdata.web.domain.Replies; +import com.rzdata.web.mapper.RepliesMapper; +import com.rzdata.web.service.IRepliesService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 回复Service业务层处理 + * + * @author panchichun + * @date 2024-08-30 + */ +@Service +public class RepliesServiceImpl implements IRepliesService +{ + @Autowired + private RepliesMapper repliesMapper; + + @Autowired + private Snowflake snowflake; + + /** + * 查询回复 + * + * @param id 回复主键 + * @return 回复 + */ + @Override + public Replies selectRepliesById(String id) + { + return repliesMapper.selectRepliesById(id); + } + + /** + * 查询回复列表 + * + * @param replies 回复 + * @return 回复 + */ + @Override + public List selectRepliesList(Replies replies) + { + return repliesMapper.selectRepliesList(replies); + } + + /** + * 新增回复 + * + * @param replies 回复 + * @return 结果 + */ + @Override + public int insertReplies(Replies replies) + { + replies.setId(String.valueOf(snowflake.nextId())); + replies.setCreateBy(SecurityUtils.getLoginUser().getUsername()); + replies.setCreateById(String.valueOf(SecurityUtils.getLoginUser().getUserId())); + replies.setCreateTime(new Date()); + replies.setIsDelete(Constants.STR_ZERO); + return repliesMapper.insertReplies(replies); + } + + /** + * 修改回复 + * + * @param replies 回复 + * @return 结果 + */ + @Override + public int updateReplies(Replies replies) + { + replies.setUpdateTime(DateUtils.getNowDate()); + return repliesMapper.updateReplies(replies); + } + + /** + * 批量删除回复 + * + * @param ids 需要删除的回复主键 + * @return 结果 + */ + @Override + public int deleteRepliesByIds(String[] ids) + { + return repliesMapper.deleteRepliesByIds(ids); + } + + /** + * 删除回复信息 + * + * @param id 回复主键 + * @return 结果 + */ + @Override + public int deleteRepliesById(String id) + { + return repliesMapper.deleteRepliesById(id); + } +} diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/service/impl/ToolServiceImpl.java b/tool-tech-admin/src/main/java/com/rzdata/web/service/impl/ToolServiceImpl.java index 6fac579..21a772d 100644 --- a/tool-tech-admin/src/main/java/com/rzdata/web/service/impl/ToolServiceImpl.java +++ b/tool-tech-admin/src/main/java/com/rzdata/web/service/impl/ToolServiceImpl.java @@ -3,6 +3,7 @@ package com.rzdata.web.service.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.BooleanUtil; import cn.hutool.core.util.IdUtil; +import com.rzdata.common.annotation.DataScope; import com.rzdata.common.constant.Constants; import com.rzdata.common.utils.DateUtils; import com.rzdata.common.utils.SecurityUtils; @@ -61,6 +62,7 @@ public class ToolServiceImpl implements IToolService * @return 工具信息 */ @Override + @DataScope(deptAlias = "d") public List selectToolList(Tool tool) { if (BooleanUtil.isTrue(tool.getPermissionCheck())) { diff --git a/tool-tech-admin/src/main/resources/application.yml b/tool-tech-admin/src/main/resources/application.yml index fe566ec..3946a06 100644 --- a/tool-tech-admin/src/main/resources/application.yml +++ b/tool-tech-admin/src/main/resources/application.yml @@ -15,6 +15,7 @@ ja: # 开发环境配置 server: + address: 0.0.0.0 # 服务器的HTTP端口,默认为8080 port: 8080 servlet: @@ -128,7 +129,12 @@ xss: # 匹配链接 urlPatterns: /system/*,/monitor/*,/tool/* +# 用于雪花算法生成id +application: + datacenterId: 2 + workerId: 1 + bpmc: tenantId: TLTC_SYS - serviceUrl: http://192.168.2.18:8081/ebpm-process-rest/ + serviceUrl: http://192.168.2.6:8081/ebpm-process-rest/ uniteWorkUrl: http://localhost/tool-tech/workflowRouter diff --git a/tool-tech-admin/src/main/resources/mapper/DiscussionsMapper.xml b/tool-tech-admin/src/main/resources/mapper/DiscussionsMapper.xml new file mode 100644 index 0000000..7e833ad --- /dev/null +++ b/tool-tech-admin/src/main/resources/mapper/DiscussionsMapper.xml @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + select id, business_id, type, content, is_delete, create_by, create_by_id, create_time, update_by, update_by_id, update_time from t_discussions + + + + + + + + insert into t_discussions + + id, + business_id, + type, + content, + is_delete, + create_by, + create_by_id, + create_time, + update_by, + update_by_id, + update_time, + + + #{id}, + #{businessId}, + #{type}, + #{content}, + #{isDelete}, + #{createBy}, + #{createById}, + #{createTime}, + #{updateBy}, + #{updateById}, + #{updateTime}, + + + + + update t_discussions + + business_id = #{businessId}, + type = #{type}, + content = #{content}, + is_delete = #{isDelete}, + create_by = #{createBy}, + create_by_id = #{createById}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_by_id = #{updateById}, + update_time = #{updateTime}, + + where id = #{id} + + + + delete from t_discussions where id = #{id} + + + + delete from t_discussions where id in + + #{id} + + + \ No newline at end of file diff --git a/tool-tech-admin/src/main/resources/mapper/DocumentMapper.xml b/tool-tech-admin/src/main/resources/mapper/DocumentMapper.xml index eb88460..db63e8c 100644 --- a/tool-tech-admin/src/main/resources/mapper/DocumentMapper.xml +++ b/tool-tech-admin/src/main/resources/mapper/DocumentMapper.xml @@ -38,15 +38,21 @@ left join t_tool on t_tool.tool_id = td.tool_id left join sys_dept on sys_dept.dept_id = td.doc_resp_dept - and td.doc_code = #{docCode} + and td.doc_code like concat('%', #{docCode}, '%') and td.doc_name like concat('%', #{docName}, '%') and td.doc_type = #{docType} - and td.doc_principals = #{docPrincipals} + and td.doc_principals like concat('%', #{docPrincipals}, '%') and td.doc_resp_dept = #{docRespDept} and td.doc_source = #{docSource} and td.doc_status = #{docStatus} and td.tool_id = #{toolId} and td.doc_category_id = #{docCategoryId} + + AND date_format(td.create_time,'%y%m%d') >= date_format(#{params.beginTime},'%y%m%d') + + + AND date_format(td.create_time,'%y%m%d') <= date_format(#{params.endTime},'%y%m%d') + and td.is_deleted = '0' order by td.create_time desc diff --git a/tool-tech-admin/src/main/resources/mapper/RepliesMapper.xml b/tool-tech-admin/src/main/resources/mapper/RepliesMapper.xml new file mode 100644 index 0000000..1badccf --- /dev/null +++ b/tool-tech-admin/src/main/resources/mapper/RepliesMapper.xml @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + select id, discussion_id, content, is_delete, create_by, create_by_id, create_time, update_by, update_by_id, update_time from t_replies + + + + + + + + insert into t_replies + + id, + discussion_id, + content, + is_delete, + create_by, + create_by_id, + create_time, + update_by, + update_by_id, + update_time, + + + #{id}, + #{discussionId}, + #{content}, + #{isDelete}, + #{createBy}, + #{createById}, + #{createTime}, + #{updateBy}, + #{updateById}, + #{updateTime}, + + + + + update t_replies + + discussion_id = #{discussionId}, + content = #{content}, + is_delete = #{isDelete}, + create_by = #{createBy}, + create_by_id = #{createById}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_by_id = #{updateById}, + update_time = #{updateTime}, + + where id = #{id} + + + + delete from t_replies where id = #{id} + + + + delete from t_replies where id in + + #{id} + + + \ No newline at end of file diff --git a/tool-tech-admin/src/main/resources/mapper/ToolMapper.xml b/tool-tech-admin/src/main/resources/mapper/ToolMapper.xml index fff079c..cce5287 100644 --- a/tool-tech-admin/src/main/resources/mapper/ToolMapper.xml +++ b/tool-tech-admin/src/main/resources/mapper/ToolMapper.xml @@ -145,8 +145,11 @@ diff --git a/tool-tech-system/src/main/java/com/rzdata/system/service/impl/SysDeptServiceImpl.java b/tool-tech-system/src/main/java/com/rzdata/system/service/impl/SysDeptServiceImpl.java index 1b22eb3..cf842dc 100644 --- a/tool-tech-system/src/main/java/com/rzdata/system/service/impl/SysDeptServiceImpl.java +++ b/tool-tech-system/src/main/java/com/rzdata/system/service/impl/SysDeptServiceImpl.java @@ -42,7 +42,6 @@ public class SysDeptServiceImpl implements ISysDeptService * @return 部门信息集合 */ @Override - @DataScope(deptAlias = "d") public List selectDeptList(SysDept dept) { return deptMapper.selectDeptList(dept); @@ -57,7 +56,7 @@ public class SysDeptServiceImpl implements ISysDeptService @Override public List selectDeptTreeList(SysDept dept) { - List depts = SpringUtils.getAopProxy(this).selectDeptList(dept); + List depts = this.selectDeptList(dept); return buildDeptTreeSelect(depts); } diff --git a/tool-tech-system/src/main/java/com/rzdata/system/service/impl/SysUserServiceImpl.java b/tool-tech-system/src/main/java/com/rzdata/system/service/impl/SysUserServiceImpl.java index 0381b1f..2fd30e8 100644 --- a/tool-tech-system/src/main/java/com/rzdata/system/service/impl/SysUserServiceImpl.java +++ b/tool-tech-system/src/main/java/com/rzdata/system/service/impl/SysUserServiceImpl.java @@ -69,7 +69,6 @@ public class SysUserServiceImpl implements ISysUserService * @return 用户信息集合信息 */ @Override - @DataScope(deptAlias = "d", userAlias = "u") public List selectUserList(SysUser user) { return userMapper.selectUserList(user);