Browse Source

基建树二级

master
limingzhe 3 years ago
parent
commit
bf861eeb7f
  1. 5
      ruoyi-archives/src/main/java/com/ruoyi/archives/controller/ArchiveRecordInfoController.java
  2. 2
      ruoyi-archives/src/main/java/com/ruoyi/archives/mapper/ArchiveCategoryInfoMapper.java
  3. 46
      ruoyi-archives/src/main/java/com/ruoyi/archives/service/impl/ArchiveCategoryInfoServiceImpl.java
  4. 11
      ruoyi-archives/src/main/java/com/ruoyi/archives/service/impl/ArchiveRecordInfoServiceImpl.java
  5. 25
      ruoyi-archives/src/main/resources/mapper/archives/ArchiveCategoryInfoMapper.xml
  6. 2
      ruoyi-archives/src/main/resources/mapper/archives/ArchiveRecordInfoMapper.xml

5
ruoyi-archives/src/main/java/com/ruoyi/archives/controller/ArchiveRecordInfoController.java

@ -90,11 +90,6 @@ public class ArchiveRecordInfoController extends BaseController {
@GetMapping("/listInfoByRecordSearch") @GetMapping("/listInfoByRecordSearch")
public TableDataInfo listInfoByRecordSearch(ArchiveRecordInfo archiveRecordInfo) { public TableDataInfo listInfoByRecordSearch(ArchiveRecordInfo archiveRecordInfo) {
startPage(); startPage();
// if (archiveRecordInfo.getArchiveCategory().equals("JJ")){
// String year = archiveRecordInfo.getYear();
// archiveRecordInfo.setYear(null);
// archiveRecordInfo.setFileNum(year);
// }
if (archiveRecordInfo.getSearchDate()!=null&&!"".equals(archiveRecordInfo.getSearchDate())){ if (archiveRecordInfo.getSearchDate()!=null&&!"".equals(archiveRecordInfo.getSearchDate())){
String[] date = archiveRecordInfo.getSearchDate().split(","); String[] date = archiveRecordInfo.getSearchDate().split(",");
archiveRecordInfo.setSearchBeginDate(date[0]); archiveRecordInfo.setSearchBeginDate(date[0]);

2
ruoyi-archives/src/main/java/com/ruoyi/archives/mapper/ArchiveCategoryInfoMapper.java

@ -73,5 +73,5 @@ public interface ArchiveCategoryInfoMapper
List<ArchiveRecordInfo> selectYearGroupByCategory(); List<ArchiveRecordInfo> selectYearGroupByCategory();
List<ArchiveRecordInfo> selectFileNumGroupByCategory(); List<ArchiveRecordInfo> selectFileNumGroupByCategory(@Param("index") String index,@Param("recordCategory") String recordCategory);
} }

46
ruoyi-archives/src/main/java/com/ruoyi/archives/service/impl/ArchiveCategoryInfoServiceImpl.java

@ -4,6 +4,7 @@ import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import com.ruoyi.archives.domain.ArchiveRecordInfo; import com.ruoyi.archives.domain.ArchiveRecordInfo;
import com.ruoyi.archives.domain.CategoryDict;
import com.ruoyi.archives.domain.TreeSelect2; import com.ruoyi.archives.domain.TreeSelect2;
import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.StringUtils;
@ -110,39 +111,36 @@ public class ArchiveCategoryInfoServiceImpl implements IArchiveCategoryInfoServi
public List<ArchiveCategoryInfo> selectDeptListAndYear(ArchiveCategoryInfo archiveCategoryInfo) { public List<ArchiveCategoryInfo> selectDeptListAndYear(ArchiveCategoryInfo archiveCategoryInfo) {
List<ArchiveCategoryInfo> archiveCategoryInfos = archiveCategoryInfoMapper.selectDeptList(archiveCategoryInfo); List<ArchiveCategoryInfo> archiveCategoryInfos = archiveCategoryInfoMapper.selectDeptList(archiveCategoryInfo);
List<ArchiveRecordInfo> map=archiveCategoryInfoMapper.selectYearGroupByCategory(); List<ArchiveRecordInfo> map=archiveCategoryInfoMapper.selectYearGroupByCategory();
List<ArchiveRecordInfo> fileNumMap = archiveCategoryInfoMapper.selectFileNumGroupByCategory(); List<ArchiveRecordInfo> fileNumMap = archiveCategoryInfoMapper.selectFileNumGroupByCategory("1",CategoryDict.JJ_RECORD);
List<ArchiveCategoryInfo> result=new ArrayList<>(); List<ArchiveCategoryInfo> result=new ArrayList<>();
for (ArchiveCategoryInfo item : archiveCategoryInfos) { for (ArchiveCategoryInfo item : archiveCategoryInfos) {
Iterator<ArchiveRecordInfo> it = map.iterator();//使用迭代器 //如果是基建档案
while(it.hasNext()){ if (CategoryDict.JJ_RECORD.equals(item.getCode())){
ArchiveRecordInfo next = it.next(); fileNumMap.stream().forEach(record->{
if(!next.getArchiveCategory().equals("JJ")&& next.getArchiveCategory().equals(item.getCode())&&next.getYear()!=null){
ArchiveCategoryInfo son=new ArchiveCategoryInfo(); ArchiveCategoryInfo son=new ArchiveCategoryInfo();
son.setParentId(item.getId()); son.setParentId(item.getId());
son.setCode(item.getCode()+"-"+next.getYear()); son.setCode(item.getCode()+"-"+record.getFileNum());
son.setId(new Random().nextLong()+100000L); son.setId(new Random().nextLong()+100000L);
son.setSort(1l); son.setSort(1l);
son.setName(next.getYear()); son.setName(record.getFileNum());
it.remove();//相同则添加,添加后删除
result.add(son); result.add(son);
});
}else{
Iterator<ArchiveRecordInfo> it = map.iterator();//使用迭代器
while(it.hasNext()){
ArchiveRecordInfo next = it.next();
if(next.getArchiveCategory().equals(item.getCode())&&next.getYear()!=null){
ArchiveCategoryInfo son=new ArchiveCategoryInfo();
son.setParentId(item.getId());
son.setCode(item.getCode()+"-"+next.getYear());
son.setId(new Random().nextLong()+100000L);
son.setSort(1l);
son.setName(next.getYear());
it.remove();//相同则添加,添加后删除
result.add(son);
}
} }
} }
Iterator<ArchiveRecordInfo> infoIterator = fileNumMap.iterator();
while (infoIterator.hasNext()){
ArchiveRecordInfo next = infoIterator.next();
if( next.getArchiveCategory().equals(item.getCode())&&next.getYear()!=null){
ArchiveCategoryInfo son=new ArchiveCategoryInfo();
son.setParentId(item.getId());
son.setCode(item.getCode()+"-"+next.getYear());
son.setId(new Random().nextLong()+100000L);
son.setSort(1l);
son.setName(next.getYear());
infoIterator.remove();//相同则添加,添加后删除
result.add(son);
}
}
} }
archiveCategoryInfos.addAll(result); archiveCategoryInfos.addAll(result);
return archiveCategoryInfos; return archiveCategoryInfos;

11
ruoyi-archives/src/main/java/com/ruoyi/archives/service/impl/ArchiveRecordInfoServiceImpl.java

@ -155,17 +155,6 @@ public class ArchiveRecordInfoServiceImpl implements IArchiveRecordInfoService
@Override @Override
public List<ArchiveRecordInfo> selectArchiveRecordInfoList(ArchiveRecordInfo archiveRecordInfo) public List<ArchiveRecordInfo> selectArchiveRecordInfoList(ArchiveRecordInfo archiveRecordInfo)
{ {
// if (archiveRecordInfo.getArchiveCategory().equals("JJ")&&archiveRecordInfo.getYear()!=null){
// final String year = archiveRecordInfo.getYear();
// final String[] split = year.split("-");
// StringBuffer sb =new StringBuffer();
// for (int i = 1; i < split.length; i++) {
// sb.append(split[i]+"-");
// }
// final String fileNum = sb.toString();
// archiveRecordInfo.setFileNum(fileNum.substring(0,fileNum.length()-1));
// archiveRecordInfo.setYear(null);
// }
return archiveRecordInfoMapper.selectArchiveRecordInfoList(archiveRecordInfo); return archiveRecordInfoMapper.selectArchiveRecordInfoList(archiveRecordInfo);
} }

25
ruoyi-archives/src/main/resources/mapper/archives/ArchiveCategoryInfoMapper.xml

@ -149,18 +149,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select> </select>
<select id="selectFileNumGroupByCategory" resultType="com.ruoyi.archives.domain.ArchiveRecordInfo"> <select id="selectFileNumGroupByCategory" resultType="com.ruoyi.archives.domain.ArchiveRecordInfo">
select SELECT ARCHIVE_CATEGORY as archiveCategory,file_num as fileNum
distinct archive_category as archiveCategory, FROM (
file_num as year SELECT
from ARCHIVE_CATEGORY,
"PUBLIC"."archive_record_info" SPLIT_PART(file_num, '-', #{index}) AS file_num
where from
archiveCategory = 'JJ' "PUBLIC"."archive_record_info"
group by where
archive_category, "PUBLIC"."archive_record_info"."ARCHIVE_CATEGORY" = #{recordCategory}
file_num )RESULT
order by GROUP BY RESULT.ARCHIVE_CATEGORY,RESULT.file_num
archive_category, ORDER BY RESULT.file_num
file_num
</select> </select>
</mapper> </mapper>

2
ruoyi-archives/src/main/resources/mapper/archives/ArchiveRecordInfoMapper.xml

@ -85,7 +85,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectArchiveRecordInfoList" parameterType="ArchiveRecordInfo" resultMap="ArchiveRecordInfoResult"> <select id="selectArchiveRecordInfoList" parameterType="ArchiveRecordInfo" resultMap="ArchiveRecordInfoResult">
<include refid="selectArchiveRecordInfoVo"/> <include refid="selectArchiveRecordInfoVo"/>
<where> <where>
<if test="fileNum != null and fileNum != ''"> and file_num = #{fileNum}</if> <if test="fileNum != null and fileNum != ''"> and file_num like concat('%',#{fileNum}, '%')</if>
<if test="totalNum != null and totalNum != ''"> and total_num = #{totalNum}</if> <if test="totalNum != null and totalNum != ''"> and total_num = #{totalNum}</if>
<if test="boxNum != null and boxNum != ''"> and box_num = #{boxNum}</if> <if test="boxNum != null and boxNum != ''"> and box_num = #{boxNum}</if>
<if test="caseNum != null and caseNum != ''"> and case_num = #{caseNum}</if> <if test="caseNum != null and caseNum != ''"> and case_num = #{caseNum}</if>

Loading…
Cancel
Save