diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayCaseCommitteeSubitemController.java b/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayCaseCommitteeSubitemController.java index c8563907..8ee2851e 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayCaseCommitteeSubitemController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayCaseCommitteeSubitemController.java @@ -66,10 +66,12 @@ public class PayCaseCommitteeSubitemController extends JeroController queryWrapper = Wrappers.query(); queryWrapper + .like(StringUtils.isNotBlank(name), "pt.name", name).or() + .like(StringUtils.isNotBlank(companyName), "pm.company_name", companyName) .like(StringUtils.isNotBlank(fenBiaoWeiName), "pe.name", fenBiaoWeiName); Page page = new Page<>(pageNo, pageSize); - IPage pageList = payCaseCommitteeSubitemService.list3(name,companyName,page, queryWrapper); + IPage pageList = payCaseCommitteeSubitemService.list3(page, queryWrapper); List records = pageList.getRecords(); if (!CollectionUtils.isEmpty(records)) { try { diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayDataFileController.java b/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayDataFileController.java index de1407df..73eb5288 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayDataFileController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayDataFileController.java @@ -2,10 +2,8 @@ package com.jero.data.controller; import java.io.*; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.UUID; +import java.util.*; +import java.util.stream.Collectors; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; import javax.annotation.Resource; @@ -31,12 +29,14 @@ import com.jero.data.service.IPayFileDownloadRecordService; import com.jero.meeting.entity.PayMeetingSituation; import com.jero.meeting.service.IPayMeetingSituationService; import com.jero.modules.message.handle.impl.EmailSendMsgHandle; +import com.jero.modules.oss.entity.OSSFile; import com.jero.modules.oss.service.IOSSFileService; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.shiro.SecurityUtils; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.transaction.annotation.Transactional; @@ -77,6 +77,7 @@ public class PayDataFileController extends JeroController queryWrapper = QueryGenerator.initQueryWrapper(queryFileList2, req.getParameterMap()); - queryWrapper.eq("pd.id",id); + List tree = tree(id, 1); + queryWrapper.in("pd.id",tree); queryWrapper.eq("pd.type",1); queryWrapper.orderByDesc("pf.create_time"); Page page = new Page<>(pageNo, pageSize); @@ -115,7 +117,7 @@ public class PayDataFileController extends JeroController queryPageListMeeting( - @RequestParam(name="id",required = true) String id, + @RequestParam(name="id") String id, QueryFileListBySearch queryFileListBySearch, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, @@ -134,26 +136,67 @@ public class PayDataFileController extends JeroController page = new Page<>(pageNo, pageSize); queryWrapper.eq("pd.type",2); + queryWrapper.orderByDesc("pf.create_time"); - queryWrapper.eq("pd.id",id); -// QueryWrapper queryWrapper = new QueryWrapper<>(); -// queryWrapper.eq("pf.id",id); -// queryWrapper.like(StringUtils.isNotBlank(fileName),"of.fileName",fileName); -// queryWrapper.like(StringUtils.isNotBlank(meetingName),"of.fileName",meetingName); -// queryWrapper.orderByDesc("pf.create_time"); -// queryWrapper.eq("pd.type",2); -// Page page = new Page<>(pageNo, pageSize); + List tree = tree(id, 2); + queryWrapper.in("pd.id",tree); IPage pageList = payDataFileService.pageDataMeeting(page,queryWrapper); return Result.OK(pageList); } + public List tree(String id , int dataType) { + LoginUser sysUser =(LoginUser) SecurityUtils.getSubject().getPrincipal(); + QueryWrapper queryWrapper = new QueryWrapper(); + queryWrapper.eq("type",dataType); + queryWrapper.eq("create_by",sysUser.getUsername()); + ArrayList arrayList = new ArrayList<>(); + arrayList.add(id); + List list = payDataDirectoryService.list(queryWrapper); + List collect = list.stream() + .filter(payDataDirectory -> id.equals(payDataDirectory.getParentId())) + .map(payDataDirectory -> { + arrayList.add(payDataDirectory.getId()); + DirectoryToTree directoryToTree = transtoTree(payDataDirectory, list,arrayList); + return directoryToTree; + }).sorted(Comparator.comparing(DirectoryToTree::getSort)) + .collect(Collectors.toList()); + return arrayList; + } + + /** + * 转换为树 + * @param payDataDirectory 单个节点用于查找其子节点 + * @param list 所以节点集合 + * @return + */ + private DirectoryToTree transtoTree(PayDataDirectory payDataDirectory, List list,List arrayList) { + DirectoryToTree directoryToTree = new DirectoryToTree(); + BeanUtils.copyProperties(payDataDirectory, directoryToTree); + List collect = list.stream() + .filter(payDataDirectory1 -> payDataDirectory.getId().equals(payDataDirectory1.getParentId())) + .map( + + payDataDirectory2 -> { + arrayList.add(payDataDirectory2.getId()); + DirectoryToTree directoryToTree1 = transtoTree(payDataDirectory2, list, arrayList); + return directoryToTree; + } + + ).sorted(Comparator.comparing(PayDataDirectory::getSort)) + .collect(Collectors.toList()); + + directoryToTree.setChildren(collect); + return directoryToTree; + } + + /** * 资料列表上传 * @@ -224,6 +267,7 @@ public class PayDataFileController extends JeroController fileIdList = new ArrayList<>(Arrays.asList(fileIds.split(","))); + fileIdList.remove(oldFileId); ArrayList list = new ArrayList<>(); stringBuffer = new StringBuffer(); findToTree(dataId, dataType); @@ -439,11 +483,16 @@ public class PayDataFileController extends JeroController fileIdList = new ArrayList<>(Arrays.asList(fileNames.split(","))); - zipFileDownload(fileIdList); + public void importFile(@RequestParam(name="ids",required = true) String ids) { + ArrayList fileIdList = new ArrayList<>(Arrays.asList(ids.split(","))); + ArrayList objects = new ArrayList<>(); + for(String id :fileIdList){ + OSSFile byId = iossFileService.getById(id); + objects.add(byId.getFileName()); + } + zipFileDownload(objects); } @@ -481,10 +530,10 @@ public class PayDataFileController extends JeroController { - Page list3 (String name,String companyName,IPage page, @Param(Constants.WRAPPER) Wrapper wrapper); + Page list3 (IPage page, @Param(Constants.WRAPPER) Wrapper wrapper); List list2 (@Param(Constants.WRAPPER) Wrapper wrapper); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/data/mapper/xml/PayCaseCommitteeSubitemMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/data/mapper/xml/PayCaseCommitteeSubitemMapper.xml index 72054e2f..e3af8555 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/data/mapper/xml/PayCaseCommitteeSubitemMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/data/mapper/xml/PayCaseCommitteeSubitemMapper.xml @@ -4,33 +4,21 @@ - - + + + + + + - diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/data/mapper/xml/PayDataFileMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/data/mapper/xml/PayDataFileMapper.xml index 876415b0..88d228ee 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/data/mapper/xml/PayDataFileMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/data/mapper/xml/PayDataFileMapper.xml @@ -16,7 +16,7 @@