Bladeren bron

feat :档案库管理

孙海博 6 maanden geleden
bovenliggende
commit
9ba13ed0ca

+ 66 - 0
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/controller/BlinkArchiveTypeController.java

@@ -0,0 +1,66 @@
+package com.wx.blink.backend.controller;
+
+import com.wx.blink.backend.domain.dto.BlinkActivityAttachmentDTO;
+import com.wx.blink.backend.domain.dto.BlinkArchiveTypeDTO;
+import com.wx.blink.backend.domain.qry.BlinkActivityAttachmentQry;
+import com.wx.blink.backend.domain.qry.BlinkArchiveTypeQry;
+import com.wx.blink.backend.domain.qry.BlinkBizFileQry;
+import com.wx.blink.backend.service.IBlinkActivityAttachmentService;
+import com.wx.blink.backend.service.IBlinkArchiveTypeService;
+import com.wx.blink.base.common.domain.PageResult;
+import com.wx.blink.base.common.domain.ResponseDTO;
+import com.wx.blink.common.vo.BlinkBizFileVO;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import javax.validation.Valid;
+import java.util.List;
+
+@RestController
+@Tag(name = "档案库管理")
+public class BlinkArchiveTypeController {
+
+    @Resource
+    private IBlinkArchiveTypeService archiveTypeService;
+
+    @Operation(summary = "新增档案分类")
+    @PostMapping("/supports/archive/type/create")
+    public ResponseDTO<String> supportsArchiveTypeCreate(@RequestBody @Valid BlinkArchiveTypeDTO dto) {
+        return archiveTypeService.supportsArchiveTypeCreate(dto);
+    }
+
+    @Operation(summary = "查看档案分类")
+    @PostMapping("/supports/archive/type/query")
+    public ResponseDTO<List<BlinkArchiveTypeDTO>> supportsBlinkArchiveTypeDTOQuery(@RequestBody @Valid BlinkArchiveTypeQry qry) {
+        return archiveTypeService.supportsBlinkArchiveTypeDTOQuery(qry);
+    }
+
+    @Operation(summary = "修改档案分类")
+    @PostMapping("/supports/archive/type/Update")
+    public ResponseDTO<String> supportsArchiveTypeUpdate(@RequestBody @Valid BlinkArchiveTypeDTO dto) {
+        return archiveTypeService.supportsArchiveTypeUpdate(dto);
+    }
+
+    @Operation(summary = "删除档案分类")
+    @GetMapping("/supports/archive/type/delete/{id}")
+    public ResponseDTO<String> supportsArchiveTypeDeleteById(@PathVariable("id") Long id) {
+        return archiveTypeService.supportsArchiveTypeDeleteById(id);
+    }
+
+
+    @Operation(summary = "项目资料列表(档案库)")
+    @PostMapping("/supports/biz/file/archivelist")
+    public ResponseDTO<PageResult<BlinkBizFileVO>> supportBizFileQueryPage(@RequestBody @Valid BlinkBizFileQry qry) {
+        return archiveTypeService.bizFileQueryPage(qry);
+    }
+
+    @Operation(summary = "将档案库中的资料进行隐藏")
+    @GetMapping("/supports/biz/file/updateShow/{id}")
+    public ResponseDTO<String> supportsBizFileUpdateShowById(@PathVariable("id") Long id) {
+        return archiveTypeService.bizFileUpdateShow(id);
+    }
+
+
+}

+ 42 - 0
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dataobject/BlinkArchiveTypeDO.java

@@ -0,0 +1,42 @@
+package com.wx.blink.backend.domain.dataobject;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.wx.blink.base.common.domain.BaseEntity;
+import lombok.Data;
+
+@Data
+@TableName("blink_archive_type")
+public class BlinkArchiveTypeDO extends BaseEntity {
+
+    /**
+     * id
+     */
+    @TableId(type = IdType.ASSIGN_UUID)
+    private String id;
+
+    /**
+     * 编码
+     */
+    private String code;
+
+    /**
+     * 分类名称
+     */
+    private String name;
+
+    /**
+     * 父级编码
+     */
+    private String parentCode;
+    /**
+     * 是否内置字段 1表示是 不能被删除
+     */
+    private Integer builtIn;;
+    /**
+     * 删除状态
+     */
+    private Integer deletedFlag;
+
+}

+ 41 - 0
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dto/BlinkArchiveTypeDTO.java

@@ -0,0 +1,41 @@
+package com.wx.blink.backend.domain.dto;
+
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.wx.blink.base.common.domain.BaseEntity;
+import com.wx.blink.base.common.json.deserializer.FileKeyVoDeserializer;
+import com.wx.blink.base.common.json.serializer.FileKeyVoSerializer;
+import lombok.Data;
+
+@Data
+public class BlinkArchiveTypeDTO extends BaseEntity {
+
+    /**
+     * id
+     */
+    private String id;
+
+    /**
+     * 编码
+     */
+    private String code;
+
+    /**
+     * 分类名称
+     */
+    private String name;
+
+    /**
+     * 父级编码
+     */
+    private String parentCode;
+    /**
+     * 是否内置字段 1表示是 不能被删除
+     */
+    private Integer builtIn;;
+    /**
+     * 删除状态
+     */
+    private Integer deletedFlag;
+
+}

+ 15 - 0
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/qry/BlinkArchiveTypeQry.java

@@ -0,0 +1,15 @@
+package com.wx.blink.backend.domain.qry;
+
+import com.wx.blink.base.common.domain.PageParam;
+import lombok.Data;
+
+@Data
+public class BlinkArchiveTypeQry extends PageParam {
+
+
+    /**
+     * 档案名称
+     * */
+    private String name;
+
+}

+ 139 - 0
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/manager/BlinkArchiveTypeServiceImpl.java

@@ -0,0 +1,139 @@
+package com.wx.blink.backend.manager;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.wx.blink.backend.domain.dataobject.BlinkActivityAttachmentDO;
+import com.wx.blink.backend.domain.dataobject.BlinkArchiveTypeDO;
+import com.wx.blink.backend.domain.dto.BlinkActivityAttachmentDTO;
+import com.wx.blink.backend.domain.dto.BlinkArchiveTypeDTO;
+import com.wx.blink.backend.domain.qry.BlinkActivityAttachmentQry;
+import com.wx.blink.backend.domain.qry.BlinkArchiveTypeQry;
+import com.wx.blink.backend.domain.qry.BlinkBizFileQry;
+import com.wx.blink.backend.objectmapper.BlinkActivityAttachmentMapper;
+import com.wx.blink.backend.objectmapper.BlinkArchiveTypeMapper;
+import com.wx.blink.backend.repository.BlinkActivityAttachmentRepository;
+import com.wx.blink.backend.repository.BlinkArchiveTypeRepository;
+import com.wx.blink.backend.service.IBlinkActivityAttachmentService;
+import com.wx.blink.backend.service.IBlinkArchiveTypeService;
+import com.wx.blink.base.common.domain.PageResult;
+import com.wx.blink.base.common.domain.ResponseDTO;
+import com.wx.blink.base.common.util.BlinkEntityUtil;
+import com.wx.blink.base.common.util.BlinkPageUtil;
+import com.wx.blink.common.vo.BlinkBizFileVO;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+import java.util.Objects;
+
+@Service
+public class BlinkArchiveTypeServiceImpl extends ServiceImpl<BlinkArchiveTypeRepository, BlinkArchiveTypeDO> implements IBlinkArchiveTypeService {
+
+    @Resource
+    private BlinkArchiveTypeRepository repository;
+    @Resource
+    private BlinkArchiveTypeMapper mapper;
+
+    /**
+     * 新增档案分类
+     *
+     * @param dto
+     * @return
+     */
+    @Override
+    public ResponseDTO<String> supportsArchiveTypeCreate(BlinkArchiveTypeDTO dto) {
+        // 生成DO
+        BlinkArchiveTypeDO archiveTypeDO = new BlinkArchiveTypeDO();
+        mapper.toBlinkArchiveTypeDO(dto, archiveTypeDO);
+        // 创建人赋值
+        BlinkEntityUtil.setCreateInfo(archiveTypeDO);
+        // 执行新增
+        this.save(archiveTypeDO);
+        return ResponseDTO.ok();
+    }
+
+    /**
+     * 修改档案分类
+     *
+     * @param dto
+     * @return
+     */
+    @Override
+    public ResponseDTO<String> supportsArchiveTypeUpdate(BlinkArchiveTypeDTO dto) {
+        // 生成DO
+        BlinkArchiveTypeDO archiveTypeDO = new BlinkArchiveTypeDO();
+        mapper.toBlinkArchiveTypeDO(dto, archiveTypeDO);
+        // 修改人赋值
+        BlinkEntityUtil.setUpdatedInfo(archiveTypeDO);
+        this.updateById(archiveTypeDO);
+        return ResponseDTO.ok();
+    }
+
+
+    /**
+     * 移除档案分类
+     *
+     * @param id
+     * @return
+     */
+    @Override
+    public ResponseDTO<String> supportsArchiveTypeDeleteById(Long id) {
+        BlinkArchiveTypeDO archiveTypeDO = this.getById(id);
+        if (!Objects.nonNull(archiveTypeDO)){
+            return ResponseDTO.dataErrorParam("档案分类不存在!请检查");
+        }
+        // 执行假删除
+        archiveTypeDO.setDeletedFlag(1);
+        // 修改人赋值
+        BlinkEntityUtil.setUpdatedInfo(archiveTypeDO);
+        this.updateById(archiveTypeDO);
+        return ResponseDTO.ok();
+    }
+
+
+
+    /**
+     * 查看档案分类列表
+     *
+     * @param qry
+     * @return
+     */
+    @Override
+    public ResponseDTO<List<BlinkArchiveTypeDTO>> supportsBlinkArchiveTypeDTOQuery(BlinkArchiveTypeQry qry) {
+        List<BlinkArchiveTypeDTO> archiveTypeDTOs = repository.supportsArchiveTypeQuery(qry);
+        return ResponseDTO.ok(archiveTypeDTOs);
+    }
+
+
+    /**
+     * 项目资料列表(档案库)
+     *
+     * @param qry
+     * @return
+     */
+    @Override
+    public ResponseDTO<PageResult<BlinkBizFileVO>> bizFileQueryPage(BlinkBizFileQry qry) {
+        Page<?> page = BlinkPageUtil.convert2PageQuery(qry);
+        List<BlinkBizFileVO> list = repository.bizFileQueryPage(page, qry);
+        PageResult<BlinkBizFileVO> pageResult = BlinkPageUtil.convert2PageResult(page, list);
+        return ResponseDTO.ok(pageResult);
+    }
+
+
+    /**
+     * 将档案库中的资料进行隐藏
+     *
+     * @param id
+     * @return
+     */
+    @Override
+    public ResponseDTO<String> bizFileUpdateShow(Long id){
+        Integer updateFlag =repository.bizFileUpdateShow(id);
+        return ResponseDTO.ok();
+
+    }
+
+
+
+
+}

+ 20 - 0
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/objectmapper/BlinkArchiveTypeMapper.java

@@ -0,0 +1,20 @@
+package com.wx.blink.backend.objectmapper;
+import com.wx.blink.backend.domain.dataobject.BlinkArchiveTypeDO;
+import com.wx.blink.backend.domain.dto.BlinkArchiveTypeDTO;
+import com.wx.blink.base.common.util.BlinkStringUtil;
+import org.mapstruct.Mapper;
+import org.mapstruct.MappingTarget;
+
+@Mapper(componentModel = "spring", imports = {BlinkStringUtil.class})
+public interface BlinkArchiveTypeMapper {
+
+    /**
+     * 活动附件主数据dto转do
+     *
+     * @param dto
+     * @return
+     */
+    void toBlinkArchiveTypeDO(BlinkArchiveTypeDTO dto, @MappingTarget BlinkArchiveTypeDO archiveTypeDO);
+
+
+}

+ 50 - 0
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/repository/BlinkArchiveTypeRepository.java

@@ -0,0 +1,50 @@
+package com.wx.blink.backend.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.wx.blink.backend.domain.dataobject.BlinkActivityAttachmentDO;
+import com.wx.blink.backend.domain.dataobject.BlinkArchiveTypeDO;
+import com.wx.blink.backend.domain.dto.BlinkActivityAttachmentDTO;
+import com.wx.blink.backend.domain.dto.BlinkArchiveTypeDTO;
+import com.wx.blink.backend.domain.qry.BlinkActivityAttachmentQry;
+import com.wx.blink.backend.domain.qry.BlinkArchiveTypeQry;
+import com.wx.blink.backend.domain.qry.BlinkBizFileQry;
+import com.wx.blink.common.vo.BlinkBizFileVO;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface BlinkArchiveTypeRepository extends BaseMapper<BlinkArchiveTypeDO> {
+
+    /**
+     * 获取档案分类
+     *
+     * @param qry
+     * @return
+     */
+    List<BlinkArchiveTypeDTO> supportsArchiveTypeQuery( @Param("query") BlinkArchiveTypeQry qry);
+
+
+    /**
+     * 项目资料列表(档案库管理)
+     *
+     * @param page
+     * @param qry
+     * @return
+     */
+    List<BlinkBizFileVO> bizFileQueryPage(Page<?> page, @Param("query") BlinkBizFileQry qry);
+
+
+    /**
+     * 项目资料不显示
+     *
+     * @param id
+     * @return
+     */
+    Integer bizFileUpdateShow(@Param("id")Long id);
+
+
+
+}

+ 70 - 0
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/service/IBlinkArchiveTypeService.java

@@ -0,0 +1,70 @@
+package com.wx.blink.backend.service;
+
+import com.wx.blink.backend.domain.dto.BlinkActivityAttachmentDTO;
+import com.wx.blink.backend.domain.dto.BlinkArchiveTypeDTO;
+import com.wx.blink.backend.domain.qry.BlinkActivityAttachmentQry;
+import com.wx.blink.backend.domain.qry.BlinkArchiveTypeQry;
+import com.wx.blink.backend.domain.qry.BlinkBizFileQry;
+import com.wx.blink.base.common.domain.PageResult;
+import com.wx.blink.base.common.domain.ResponseDTO;
+import com.wx.blink.common.vo.BlinkBizFileVO;
+
+import java.util.List;
+
+public interface IBlinkArchiveTypeService {
+
+    /**
+     * 新增档案分类
+     *
+     * @param dto
+     * @return
+     */
+    ResponseDTO<String> supportsArchiveTypeCreate(BlinkArchiveTypeDTO dto);
+
+    /**
+     * 编辑档案分类
+     *
+     * @param dto
+     * @return
+     */
+    ResponseDTO<String> supportsArchiveTypeUpdate(BlinkArchiveTypeDTO dto);
+
+    /**
+     * 删除档案分类
+     *
+     * @param id
+     * @return
+     */
+    ResponseDTO<String> supportsArchiveTypeDeleteById(Long id);
+
+    /**
+     * 分页查询活动附件列表
+     *
+     * @param qry
+     * @return
+     */
+    ResponseDTO<List<BlinkArchiveTypeDTO>> supportsBlinkArchiveTypeDTOQuery(BlinkArchiveTypeQry qry);
+
+
+
+
+    /**
+     * 项目资料列表(档案库)
+     *
+     * @param qry
+     * @return
+     */
+    ResponseDTO<PageResult<BlinkBizFileVO>> bizFileQueryPage(BlinkBizFileQry qry);
+
+
+    /**
+     * 将档案库中的资料进行隐藏
+     *
+     * @param id
+     * @return
+     */
+    ResponseDTO<String> bizFileUpdateShow(Long id);
+
+
+
+}

+ 29 - 0
bound-link-api/blink-backend/src/main/resources/mapper/BlinkArchiveTypeRepository.xml

@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="com.wx.blink.backend.repository.BlinkArchiveTypeRepository">
+    <update id="bizFileUpdateShow">
+        update blink_biz_file
+        set show_flag = '1'
+        where id =#{id}
+    </update>
+    <select id="supportsArchiveTypeQuery" resultType="com.wx.blink.backend.domain.dto.BlinkArchiveTypeDTO">
+        select *
+        from blink_archive_type
+        where deleted_flag = '0'
+        <if test="query.name != null and query.name !=''">
+            AND name = #{query.name}
+        </if>
+        order by create_time asc
+    </select>
+    <select id="bizFileQueryPage" resultType="com.wx.blink.common.vo.BlinkBizFileVO">
+        select * from blink_biz_file
+        where deleted_flag = 0
+        and IFNULL(show_flag,0)=0
+        <if test="query.bizId != null  and query.bizId != ''">
+            and biz_id = #{query.bizId}
+        </if>
+        <if test="query.bizModule != null  and query.bizModule != ''">
+            and biz_module = #{bizModule}
+        </if>
+    </select>
+</mapper>