package com.ruoyi.mapper;
|
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.ruoyi.domain.DocumentMaterials;
|
import com.ruoyi.domain.vo.DocumentMaterialFileStyle;
|
import com.ruoyi.domain.vo.DocumentMaterialsVo;
|
import com.ruoyi.domain.vo.DocumentMaterialsVoLarge;
|
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Select;
|
|
import java.util.List;
|
|
@Mapper
|
public interface DocumentMaterialsMapper extends BaseMapper<DocumentMaterials> {
|
|
@Select("update document_materials SET url = #{url},size_type=#{sizeType}, file_number=#{fileNumber},page_order=#{pageOrder},width=#{width},height=#{height},horizontal_resolution=#{horizontalResolution},vertical_resolution=#{verticalResolution},file_size=#{fileSize}, format=#{format} where page_number = #{pageNumber}")
|
Long updateInfoByPageNumber(@Param("pageNumber") Long pageNumber,@Param("sizeType") String sizeType, @Param("fileNumber") Long fileNumber,@Param("pageOrder") Long pageOrder,@Param("width") int width, @Param("height") int height, @Param("horizontalResolution") int horizontalResolution, @Param("verticalResolution") int verticalResolution, @Param("fileSize") Double fileSize,@Param("url") String url,@Param("format") String format);
|
|
|
//根据题名拿到最大的pageOrder
|
@Select("select count(*) from document_materials where title=#{title} and page_number<#{pageNumber} and stage=#{stage}")
|
Long getMaxPageOrder(@Param("title")String title,@Param("pageNumber") Long pageNumber,@Param("stage") String stage);
|
|
//计算文件的序号
|
@Select("select count(distinct(title))-1 from document_materials where page_number<=#{pageNumber}")
|
Long getFileNumber(@Param("pageNumber") Long pageNumber);
|
|
//查询卷内目录
|
@Select(
|
"select ROW_NUMBER() OVER (ORDER BY page_number) AS num, document_number, creator,title, date, page_number,dm.remarks, ar.record_id, publicity from document_materials as dm, archive_records as ar \n" +
|
" WHERE ar.id = dm.record_id and page_number IN (\n" +
|
" SELECT MIN(page_number)\n" +
|
" FROM document_materials where record_id=#{recordId}\n" +
|
" GROUP BY stage, title) and ar.id =#{recordId} order by page_number ;")
|
List<DocumentMaterialsVo> getArchiveMatInfo(@Param("recordId") int recordId);
|
|
|
@Select( "select ROW_NUMBER() OVER (ORDER BY page_number) AS num,ar.record_id, file_number, \n" +
|
" document_number, creator, title, date, page_number, page_order, \n" +
|
" stage, publicity, is_attachment, dm.retention_period, security_level, is_sensitive,\n" +
|
" is_canceled, format, size_type, horizontal_resolution, vertical_resolution, width,\n" +
|
" height, file_size, attachment_history_numbers,url, dm.remarks\n" +
|
" from document_materials as dm, archive_records as ar WHERE dm.record_id=ar.id \n" +
|
"and dm.record_id=#{recordId}")
|
List<DocumentMaterialsVoLarge> getDocumentMaterialsvoLarge(@Param("recordId") int recordId);
|
|
@Select("select count(*) as cnt, file_style from document_materials " +
|
"where record_id=#{recordId} GROUP BY file_style")
|
|
List<DocumentMaterialFileStyle> getFileStyleInfo(@Param("recordId") int recordId);
|
}
|