浏览代码

代码更新

dingsong 4 年之前
父节点
当前提交
4d9a544d1e

+ 8 - 0
src/main/java/com/migao/controller/FileInfoController.java

@@ -5,11 +5,13 @@ import cn.hutool.core.io.FileUtil;
 import cn.hutool.http.HttpRequest;
 import com.alibaba.fastjson.JSONObject;
 import com.migao.config.authority.AuthenticationProperties;
+import com.migao.config.authority.LoginUtils;
 import com.migao.config.constant.SystemConstant;
 import com.migao.config.properties.SystemProperties;
 import com.migao.config.response.ResponseBean;
 import com.migao.config.response.ResponseBuilder;
 import com.migao.entity.po.FileInfo;
+import com.migao.entity.po.User;
 import com.migao.entity.vo.res.FileRes;
 import com.migao.service.FileService;
 import com.migao.util.EntityUtils;
@@ -24,6 +26,7 @@ import org.springframework.web.multipart.MultipartFile;
 import javax.annotation.Resource;
 import java.io.File;
 import java.io.IOException;
+import java.time.LocalDateTime;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -48,6 +51,9 @@ public class FileInfoController {
     @ApiOperation(value = "01.文件统一上传")
     @PostMapping(value = "/upload")
     public ResponseBean<FileRes> upload(@RequestPart MultipartFile file) {
+        //获取当前登录用户的信息
+        User user = LoginUtils.getUser();
+
         String originalFilename = file.getOriginalFilename();
         String prefix = FileUtils.getPrefix(originalFilename, SystemConstant.FILE_NAME_SPLIT_SYMBOL);
         String suffix = FileUtils.getSuffix(originalFilename, SystemConstant.FILE_NAME_SPLIT_SYMBOL);
@@ -93,6 +99,8 @@ public class FileInfoController {
                 .suffix(suffix)
                 .uri(uri)
                 .deleted(0)
+                .createTime(LocalDateTime.now())
+                .createUserId(user.getId())
                 .build();
         fileInfoService.save(build);
         log.info("上传文件:{}", JSONObject.toJSONString(build));

+ 3 - 0
src/main/java/com/migao/entity/po/DocumentAttachment.java

@@ -10,6 +10,9 @@ import javax.persistence.*;
 import java.io.Serializable;
 import java.time.LocalDateTime;
 
+/**
+ * @author dingsong
+ */
 @Data
 @NoArgsConstructor
 @AllArgsConstructor

+ 4 - 7
src/main/java/com/migao/entity/po/DocumentSharing.java

@@ -29,7 +29,7 @@ public class DocumentSharing implements Serializable {
     private Integer id;
 
     @Column(name = "document_code", columnDefinition = "bigint(20) comment '文档编码'")
-    private Integer documentCode;
+    private String documentCode;
 
     @Column(name = "document_name", columnDefinition = "varchar(255) comment '文档名称'")
     private String documentName;
@@ -43,17 +43,14 @@ public class DocumentSharing implements Serializable {
     @Column(name = "document_format_id", columnDefinition = "bigint(20) comment '文档格式id'")
     private Integer documentFormatId;
 
-    @Column(name = "must_project_type", columnDefinition = "varchar(255) comment '必须项目类型'")
+    @Column(name = "must_project_type", columnDefinition = "text comment '必须项目类型'")
     private String mustProjectType;
 
     @Column(name = "submitter", columnDefinition = "varchar(255) comment '提交人'")
     private String submitter;
 
-    @Column(name = "submit_time", columnDefinition = "timestamp DEFAULT CURRENT_TIMESTAMP comment '提交时间'")
-    private LocalDateTime submitTime;
-
-    @Column(name = "document_id", columnDefinition = "bigint(20) comment '文档id'")
-    private Integer documentId;
+    @Column(name = "file_id", columnDefinition = "bigint(20) comment '附件id'")
+    private Integer fileId;
 
     @TableField(fill = FieldFill.INSERT_UPDATE)
     @Column(name = "deleted", columnDefinition = "tinyint(4) comment '逻辑删除 0未删除 1已删除'")

+ 6 - 0
src/main/java/com/migao/entity/po/FileInfo.java

@@ -8,6 +8,7 @@ import lombok.NoArgsConstructor;
 import org.hibernate.annotations.GenericGenerator;
 
 import javax.persistence.*;
+import java.time.LocalDateTime;
 
 /**
  * @version 1.0
@@ -52,4 +53,9 @@ public class FileInfo {
     @Column(name = "deleted", columnDefinition = "tinyint(4) comment '逻辑删除 0未删除 1已删除'")
     private Integer deleted;
 
+    @Column(name = "create_time", columnDefinition = "timestamp DEFAULT CURRENT_TIMESTAMP comment '创建时间'")
+    private LocalDateTime createTime;
+
+    @JoinColumn(name = "create_user_id", columnDefinition = "bigint(20) comment '新增人'")
+    private Integer createUserId;
 }

+ 50 - 0
src/main/java/com/migao/entity/vo/req/DocumentSharingInsertReq.java

@@ -0,0 +1,50 @@
+package com.migao.entity.vo.req;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author dingsong
+ */
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+@Data
+public class DocumentSharingInsertReq {
+
+    @ApiModelProperty(value = "文档名称")
+    @NotEmpty(message = "文档名称不能为空")
+    private String documentName;
+
+    @ApiModelProperty(value = "项目类别id")
+    @NotNull(message = "项目类别id不能为空")
+    private Integer projectTypeId;
+
+    @ApiModelProperty(value = "项目阶段id")
+    @NotNull(message = "项目阶段id不能为空")
+    private Integer projectPhaseId;
+
+    @ApiModelProperty(value = "文档格式id")
+    @NotNull(message = "文档格式id不能为空")
+    private Integer documentFormatId;
+
+    @ApiModelProperty(value = "必须项目类型")
+    @NotEmpty(message = "必须项目类型不能为空")
+    private String mustProjectType;
+
+    @ApiModelProperty(value = "提交人")
+    @NotEmpty(message = "提交人不能为空")
+    private String submitter;
+
+    @ApiModelProperty(value = "附件id")
+    @NotNull(message = "附件id不能为空")
+    private Integer fileId;
+}

+ 18 - 0
src/main/java/com/migao/entity/vo/req/DocumentSharingQueryReq.java

@@ -0,0 +1,18 @@
+package com.migao.entity.vo.req;
+
+import com.migao.config.response.BasePageRequest;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @author dingsong
+ */
+@NoArgsConstructor
+@AllArgsConstructor
+@Data
+public class DocumentSharingQueryReq extends BasePageRequest {
+    @ApiModelProperty(value = "关键字")
+    private String key;
+}

+ 52 - 0
src/main/java/com/migao/entity/vo/req/DocumentSharingUpdateReq.java

@@ -0,0 +1,52 @@
+package com.migao.entity.vo.req;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author dingsong
+ */
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+@Data
+public class DocumentSharingUpdateReq {
+    @ApiModelProperty(value = "主键")
+    @NotNull(message = "主键id不能为空")
+    private Integer id;
+
+    @ApiModelProperty(value = "文档名称")
+    @NotEmpty(message = "文档名称不能为空")
+    private String documentName;
+
+    @ApiModelProperty(value = "项目类别")
+    @NotNull(message = "项目类别不能为空")
+    private Integer projectTypeId;
+
+    @ApiModelProperty(value = "项目阶段")
+    @NotNull(message = "项目阶段不能为空")
+    private Integer projectPhaseId;
+
+    @ApiModelProperty(value = "文档格式")
+    @NotNull(message = "文档格式不能为空")
+    private Integer documentFormatId;
+
+    @ApiModelProperty(value = "必须项目类型")
+    @NotEmpty(message = "必须项目类型不能为空")
+    private String mustProjectType;
+
+    @ApiModelProperty(value = "提交人")
+    @NotEmpty(message = "提交人不能为空")
+    private String submitter;
+
+    @ApiModelProperty(value = "附件")
+    private Integer fileId;
+}

+ 48 - 0
src/main/java/com/migao/entity/vo/res/DocumentSharingPageQueryRes.java

@@ -0,0 +1,48 @@
+package com.migao.entity.vo.res;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+/**
+ * @author dingsong
+ */
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+@Data
+public class DocumentSharingPageQueryRes {
+    @ApiModelProperty(value = "主键")
+    private Integer id;
+
+    @ApiModelProperty(value = "文档编码")
+    private String documentCode;
+
+    @ApiModelProperty(value = "文档名称")
+    private String documentName;
+
+    @ApiModelProperty(value = "项目类别")
+    private String projectType;
+
+    @ApiModelProperty(value = "项目阶段")
+    private String projectPhase;
+
+    @ApiModelProperty(value = "文档格式")
+    private String documentFormat;
+
+    @ApiModelProperty(value = "必须项目类型")
+    private String mustProjectType;
+
+    @ApiModelProperty(value = "提交人")
+    private String submitter;
+
+    @ApiModelProperty(value = "逻辑删除")
+    private Integer deleted;
+
+    @ApiModelProperty(value = "创建时间")
+    private LocalDateTime createTime;
+}

+ 51 - 0
src/main/java/com/migao/entity/vo/res/DocumentSharingQueryRes.java

@@ -0,0 +1,51 @@
+package com.migao.entity.vo.res;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+/**
+ * @author dingsong
+ */
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+@Data
+public class DocumentSharingQueryRes {
+    @ApiModelProperty(value = "主键")
+    private Integer id;
+
+    @ApiModelProperty(value = "文档编码")
+    private String documentCode;
+
+    @ApiModelProperty(value = "文档名称")
+    private String documentName;
+
+    @ApiModelProperty(value = "项目类别")
+    private String projectType;
+
+    @ApiModelProperty(value = "项目阶段")
+    private String projectPhase;
+
+    @ApiModelProperty(value = "文档格式")
+    private String documentFormat;
+
+    @ApiModelProperty(value = "必须项目类型")
+    private String mustProjectType;
+
+    @ApiModelProperty(value = "提交人")
+    private String submitter;
+
+    @ApiModelProperty(value = "逻辑删除")
+    private Integer deleted;
+
+    @ApiModelProperty(value = "创建时间")
+    private LocalDateTime createTime;
+
+    @ApiModelProperty(value = "附件基本信息")
+    DemandAttachmentRes demandAttachmentRes = new DemandAttachmentRes();
+}

+ 65 - 0
src/main/java/com/migao/service/DocumentSharingService.java

@@ -1,10 +1,75 @@
 package com.migao.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.migao.config.response.BasePageRequest;
+import com.migao.config.response.PageBeanOne;
+import com.migao.config.response.ResponseBean;
 import com.migao.entity.po.DocumentSharing;
+import com.migao.entity.vo.req.DocumentSharingInsertReq;
+import com.migao.entity.vo.req.DocumentSharingQueryReq;
+import com.migao.entity.vo.req.DocumentSharingUpdateReq;
+import com.migao.entity.vo.res.DocumentSharingPageQueryRes;
+import com.migao.entity.vo.res.DocumentSharingQueryRes;
 
 /**
  * @author dingsong
  */
 public interface DocumentSharingService extends IService<DocumentSharing> {
+    /**
+     * 新增
+     * @param doc
+     * @return
+     */
+    ResponseBean<?> insert(DocumentSharingInsertReq doc);
+
+
+    /**
+     * 删除
+     * @param id 文档共享id
+     * @return
+     */
+    ResponseBean<?> deleteById(String id);
+
+    /**
+     * 更新
+     * @param documentSharingUpdateReq 文档共享更新请求
+     * @return
+     */
+    ResponseBean<?> update(DocumentSharingUpdateReq documentSharingUpdateReq);
+
+    /**
+     * 通过id查询单条数据
+     * @param id 文档共享id
+     * @return
+     */
+    ResponseBean<DocumentSharingQueryRes> findById(String id);
+
+    /**
+     * 分页查询所有文档共享数据
+     * @param basePageRequest 页数
+     * @return
+     */
+    ResponseBean<PageBeanOne<DocumentSharingPageQueryRes>> pageQueryAll(BasePageRequest basePageRequest);
+
+    /**
+     * 分页查询当前用户文档共享数据
+     * @param basePageRequest 页数
+     * @return
+     */
+    ResponseBean<PageBeanOne<DocumentSharingPageQueryRes>> pageQueryById(BasePageRequest basePageRequest);
+
+
+    /**
+     * 分页模糊查询所有文档共享数据
+     * @param documentSharingQuery 关键字
+     * @return
+     */
+    ResponseBean<PageBeanOne<DocumentSharingPageQueryRes>> pageQueryOne(DocumentSharingQueryReq documentSharingQuery);
+
+    /**
+     * 分页模糊查询当前用户文档共享数据
+     * @param documentSharingQuery 关键字
+     * @return
+     */
+    ResponseBean<PageBeanOne<DocumentSharingPageQueryRes>> pageQueryOneById(DocumentSharingQueryReq documentSharingQuery);
 }

+ 283 - 2
src/main/java/com/migao/service/impl/DocumentSharingServiceImpl.java

@@ -1,13 +1,30 @@
 package com.migao.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.migao.entity.po.DocumentSharing;
-import com.migao.mapper.DocumentSharingMapper;
+import com.migao.config.authority.LoginUtils;
+import com.migao.config.response.*;
+import com.migao.entity.po.*;
+import com.migao.entity.vo.req.DocumentSharingInsertReq;
+import com.migao.entity.vo.req.DocumentSharingQueryReq;
+import com.migao.entity.vo.req.DocumentSharingUpdateReq;
+import com.migao.entity.vo.res.DemandAttachmentRes;
+import com.migao.entity.vo.res.DocumentSharingPageQueryRes;
+import com.migao.entity.vo.res.DocumentSharingQueryRes;
+import com.migao.mapper.*;
 import com.migao.service.DocumentSharingService;
+import com.migao.util.EntityUtils;
+import com.migao.util.ProjectNoUtil;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import javax.annotation.Resource;
+import java.time.LocalDateTime;
+
 /**
  * @author dingsong
  */
@@ -15,4 +32,268 @@ import org.springframework.transaction.annotation.Transactional;
 @Service
 @Transactional(rollbackFor = {Exception.class})
 public class DocumentSharingServiceImpl extends ServiceImpl<DocumentSharingMapper, DocumentSharing> implements DocumentSharingService {
+    @Resource
+    DocumentSharingMapper documentSharingMa;
+    @Resource
+    ProjectTypeMapper projectTypeMapper;
+    @Resource
+    ProjectStageMapper projectStageMapper;
+    @Resource
+    DictionaryMapper dictionaryMapper;
+    @Resource
+    FileInfoMapper fileInfoMapper;
+    @Resource
+    UserMapper userMapper;
+
+    @Override
+    public ResponseBean<?> insert(DocumentSharingInsertReq doc) {
+        //获取当前登录用户的信息
+        User user = LoginUtils.getUser();
+
+        //提交文档共享
+        DocumentSharing documentSharing = EntityUtils.copyProperties(doc,DocumentSharing.class);
+        //文档编码
+        documentSharing.setDocumentCode(ProjectNoUtil.getCode());
+        //是否删除
+        documentSharing.setDeleted(0);
+        //创建时间
+        documentSharing.setCreateTime(LocalDateTime.now());
+        //用户id
+        documentSharing.setCreateUserId(user.getId());
+        documentSharingMa.insert(documentSharing);
+
+        return ResponseBuilder.ok(200,"新增成功");
+    }
+
+    @Override
+    public ResponseBean<?> deleteById(String id) {
+        Integer idInt = Integer.parseInt(id);
+        DocumentSharing documentSharing = documentSharingMa.selectById(idInt);
+        documentSharing.setDeleted(1);
+        documentSharingMa.updateById(documentSharing);
+
+        return ResponseBuilder.ok(200,"删除成功");
+    }
+
+    @Override
+    public ResponseBean<?> update(DocumentSharingUpdateReq documentSharingUpdateReq) {
+        //获取当前登录用户的信息
+        User user = LoginUtils.getUser();
+        //通过id查询文档共享更新之前的记录
+        DocumentSharing documentSharingOne = documentSharingMa.selectById(documentSharingUpdateReq.getId());
+        //然后查询是否有附件记录以及附件更新记录
+        if(documentSharingOne.getFileId() != null && documentSharingUpdateReq.getFileId()!=null){
+            //如果附件有更新就把之前的附件状态改为删除
+            FileInfo fileInfo = fileInfoMapper.selectById(documentSharingOne.getFileId());
+            fileInfo.setDeleted(1);
+            fileInfoMapper.updateById(fileInfo);
+        }
+
+        DocumentSharing documentSharing = EntityUtils.copyProperties(documentSharingUpdateReq,DocumentSharing.class);
+        documentSharing.setCreateTime(LocalDateTime.now());
+        documentSharing.setCreateUserId(user.getId());
+        documentSharingMa.updateById(documentSharing);
+        return ResponseBuilder.ok(200,"更新成功");
+    }
+
+    @Override
+    public ResponseBean<DocumentSharingQueryRes> findById(String id) {
+        Integer idInt = Integer.parseInt(id);
+        DocumentSharing documentSharing = documentSharingMa.selectById(idInt);
+
+        //附件基本信息
+        FileInfo fileInfo = fileInfoMapper.selectById(documentSharing.getFileId());
+        DemandAttachmentRes demandAttachmentRes = new DemandAttachmentRes();
+        demandAttachmentRes.setId(fileInfo.getId());
+        demandAttachmentRes.setName(fileInfo.getName());
+        demandAttachmentRes.setSubmitter(userMapper.selectById(fileInfo.getCreateUserId()).getName());
+        demandAttachmentRes.setCreateTime(fileInfo.getCreateTime());
+
+        DocumentSharingQueryRes documentSharingQueryRes = DocumentSharingQueryRes
+                .builder()
+                .id(documentSharing.getId())
+                .documentCode(documentSharing.getDocumentCode())
+                .documentName(documentSharing.getDocumentName())
+                .projectType(projectTypeMapper.selectById(documentSharing.getProjectTypeId()).getValue())
+                .projectPhase(projectStageMapper.selectById(documentSharing.getProjectPhaseId()).getName())
+                .documentFormat(dictionaryMapper.selectById(documentSharing.getDocumentFormatId()).getValue())
+                .mustProjectType(documentSharing.getMustProjectType())
+                .submitter(documentSharing.getSubmitter())
+                .deleted(documentSharing.getDeleted())
+                .createTime(documentSharing.getCreateTime())
+                .demandAttachmentRes(demandAttachmentRes)
+                .build();
+        return ResponseBuilder.ok(documentSharingQueryRes);
+    }
+
+    @Override
+    public ResponseBean<PageBeanOne<DocumentSharingPageQueryRes>> pageQueryAll(BasePageRequest basePageRequest) {
+        Integer page = basePageRequest.getPage();
+        page = page == null ? 1 : page <= 0 ? 1 : page;
+        Integer size = basePageRequest.getSize();
+        size = size == null ? 10 : size <= 0 ? 10 : size;
+
+        LambdaQueryWrapper<DocumentSharing> defaultQueryWrapper =  Wrappers.<DocumentSharing>lambdaQuery();
+        defaultQueryWrapper.orderByDesc(DocumentSharing::getCreateTime);
+
+        Page<DocumentSharing> all = documentSharingMa.selectPage(new Page<>(page, size),defaultQueryWrapper);
+
+        return ResponseBuilderOne.ok(
+                all,
+                element -> {
+                    DocumentSharingPageQueryRes docSharingPageQueryRes = DocumentSharingPageQueryRes
+                            .builder()
+                            .id(element.getId())
+                            .documentCode(element.getDocumentCode())
+                            .documentName(element.getDocumentName())
+                            .projectType(projectTypeMapper.selectById(element.getProjectTypeId()).getValue())
+                            .projectPhase(projectStageMapper.selectById(element.getProjectPhaseId()).getName())
+                            .documentFormat(dictionaryMapper.selectById(element.getDocumentFormatId()).getValue())
+                            .mustProjectType(element.getMustProjectType())
+                            .submitter(element.getSubmitter())
+                            .deleted(element.getDeleted())
+                            .createTime(element.getCreateTime())
+                            .build();
+                    return docSharingPageQueryRes;
+                  }
+                );
+    }
+
+    @Override
+    public ResponseBean<PageBeanOne<DocumentSharingPageQueryRes>> pageQueryById(BasePageRequest basePageRequest) {
+        //获取当前登录用户的信息
+        User user = LoginUtils.getUser();
+
+        Integer page = basePageRequest.getPage();
+        page = page == null ? 1 : page <= 0 ? 1 : page;
+        Integer size = basePageRequest.getSize();
+        size = size == null ? 10 : size <= 0 ? 10 : size;
+
+        LambdaQueryWrapper<DocumentSharing> defaultQueryWrapper =  Wrappers.<DocumentSharing>lambdaQuery();
+        defaultQueryWrapper.eq(DocumentSharing::getCreateUserId,user.getId());
+        defaultQueryWrapper.orderByDesc(DocumentSharing::getCreateTime);
+
+        Page<DocumentSharing> all = documentSharingMa.selectPage(new Page<>(page, size),defaultQueryWrapper);
+
+        return ResponseBuilderOne.ok(
+                all,
+                element -> {
+                    DocumentSharingPageQueryRes docSharingPageQueryRes = DocumentSharingPageQueryRes
+                            .builder()
+                            .id(element.getId())
+                            .documentCode(element.getDocumentCode())
+                            .documentName(element.getDocumentName())
+                            .projectType(projectTypeMapper.selectById(element.getProjectTypeId()).getValue())
+                            .projectPhase(projectStageMapper.selectById(element.getProjectPhaseId()).getName())
+                            .documentFormat(dictionaryMapper.selectById(element.getDocumentFormatId()).getValue())
+                            .mustProjectType(element.getMustProjectType())
+                            .submitter(element.getSubmitter())
+                            .deleted(element.getDeleted())
+                            .createTime(element.getCreateTime())
+                            .build();
+                    return docSharingPageQueryRes;
+                }
+        );
+    }
+
+    @Override
+    public ResponseBean<PageBeanOne<DocumentSharingPageQueryRes>> pageQueryOne(DocumentSharingQueryReq documentSharingQuery) {
+        Integer page = documentSharingQuery.getPage();
+        page = page == null ? 1 : page <= 0 ? 1 : page;
+        Integer size = documentSharingQuery.getSize();
+        size = size == null ? 10 : size <= 0 ? 10 : size;
+
+        LambdaQueryWrapper<DocumentSharing> defaultQueryWrapper =  Wrappers.<DocumentSharing>lambdaQuery();
+        if(StringUtils.isNotBlank(documentSharingQuery.getKey())){
+            //文档编码
+            defaultQueryWrapper.like(DocumentSharing::getDocumentCode,documentSharingQuery.getKey());
+            //文档名称
+            LambdaQueryWrapper<DocumentSharing> or1 = defaultQueryWrapper.or();
+            or1.like(DocumentSharing::getDocumentName,documentSharingQuery.getKey());
+            //必须项目类型
+            LambdaQueryWrapper<DocumentSharing> or2 = or1.or();
+            or2.like(DocumentSharing::getMustProjectType,documentSharingQuery.getKey());
+            //提交人
+            LambdaQueryWrapper<DocumentSharing> or3 = or2.or();
+            or3.like(DocumentSharing::getSubmitter,documentSharingQuery.getKey());
+        }
+        defaultQueryWrapper.orderByDesc(DocumentSharing::getCreateTime);
+
+
+        Page<DocumentSharing> all = documentSharingMa.selectPage(new Page<>(page, size),defaultQueryWrapper);
+
+        return ResponseBuilderOne.ok(
+                all,
+                element -> {
+                    DocumentSharingPageQueryRes docSharingPageQueryRes = DocumentSharingPageQueryRes
+                            .builder()
+                            .id(element.getId())
+                            .documentCode(element.getDocumentCode())
+                            .documentName(element.getDocumentName())
+                            .projectType(projectTypeMapper.selectById(element.getProjectTypeId()).getValue())
+                            .projectPhase(projectStageMapper.selectById(element.getProjectPhaseId()).getName())
+                            .documentFormat(dictionaryMapper.selectById(element.getDocumentFormatId()).getValue())
+                            .mustProjectType(element.getMustProjectType())
+                            .submitter(element.getSubmitter())
+                            .deleted(element.getDeleted())
+                            .createTime(element.getCreateTime())
+                            .build();
+                    return docSharingPageQueryRes;
+                }
+        );
+    }
+
+    @Override
+    public ResponseBean<PageBeanOne<DocumentSharingPageQueryRes>> pageQueryOneById(DocumentSharingQueryReq documentSharingQuery) {
+        //获取当前登录用户的信息
+        User user = LoginUtils.getUser();
+
+        Integer page = documentSharingQuery.getPage();
+        page = page == null ? 1 : page <= 0 ? 1 : page;
+        Integer size = documentSharingQuery.getSize();
+        size = size == null ? 10 : size <= 0 ? 10 : size;
+
+        LambdaQueryWrapper<DocumentSharing> defaultQueryWrapper =  Wrappers.<DocumentSharing>lambdaQuery();
+        defaultQueryWrapper.eq(DocumentSharing::getCreateUserId,user.getId());
+
+        if(StringUtils.isNotBlank(documentSharingQuery.getKey())){
+            //文档编码
+            defaultQueryWrapper.like(DocumentSharing::getDocumentCode,documentSharingQuery.getKey());
+            //文档名称
+            LambdaQueryWrapper<DocumentSharing> or1 = defaultQueryWrapper.or();
+            or1.like(DocumentSharing::getDocumentName,documentSharingQuery.getKey());
+            //必须项目类型
+            LambdaQueryWrapper<DocumentSharing> or2 = or1.or();
+            or2.like(DocumentSharing::getMustProjectType,documentSharingQuery.getKey());
+            //提交人
+            LambdaQueryWrapper<DocumentSharing> or3 = or2.or();
+            or3.like(DocumentSharing::getSubmitter,documentSharingQuery.getKey());
+        }
+        defaultQueryWrapper.orderByDesc(DocumentSharing::getCreateTime);
+
+
+        Page<DocumentSharing> all = documentSharingMa.selectPage(new Page<>(page, size),defaultQueryWrapper);
+
+        return ResponseBuilderOne.ok(
+                all,
+                element -> {
+                    DocumentSharingPageQueryRes docSharingPageQueryRes = DocumentSharingPageQueryRes
+                            .builder()
+                            .id(element.getId())
+                            .documentCode(element.getDocumentCode())
+                            .documentName(element.getDocumentName())
+                            .projectType(projectTypeMapper.selectById(element.getProjectTypeId()).getValue())
+                            .projectPhase(projectStageMapper.selectById(element.getProjectPhaseId()).getName())
+                            .documentFormat(dictionaryMapper.selectById(element.getDocumentFormatId()).getValue())
+                            .mustProjectType(element.getMustProjectType())
+                            .submitter(element.getSubmitter())
+                            .deleted(element.getDeleted())
+                            .createTime(element.getCreateTime())
+                            .build();
+                    return docSharingPageQueryRes;
+                }
+        );
+    }
+
+
 }