|
|
@@ -29,6 +29,7 @@ import java.math.RoundingMode;
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.Comparator;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
import java.util.stream.Collectors;
|
|
|
@@ -335,7 +336,7 @@ public class InvAccountIncoiceServiceImpl extends ServiceImpl<InvAccountIncoiceM
|
|
|
|
|
|
} else {
|
|
|
LambdaQueryWrapper<InvAccountOperate> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
-// lambdaQueryWrapper.isNotNull(InvAccountOperate::getInvoiceId);
|
|
|
+ lambdaQueryWrapper.isNotNull(InvAccountOperate::getInvoiceId);
|
|
|
lambdaQuery
|
|
|
.like(!StringUtils.isEmpty(invAccountIncoiceQueryVo.getBiller()), InvAccountIncoice::getBiller, invAccountIncoiceQueryVo.getBiller())
|
|
|
.like(!StringUtils.isEmpty(invAccountIncoiceQueryVo.getInvoiceBy()), InvAccountIncoice::getInvoiceBy,
|
|
|
@@ -351,21 +352,22 @@ public class InvAccountIncoiceServiceImpl extends ServiceImpl<InvAccountIncoiceM
|
|
|
lambdaQuery.le(InvAccountIncoice::getInvoiceTime, invAccountIncoiceQueryVo.getInvoiceTimeEnd().toString());
|
|
|
}
|
|
|
lambdaQuery.orderByDesc(InvAccountIncoice::getInvoiceTime);
|
|
|
- list = invAccountOperateService.list(lambdaQueryWrapper);
|
|
|
-// List<String> collect = list.stream().map(InvAccountOperate::getInvoiceId).collect(Collectors.toList());
|
|
|
- //将开票id集合放入查询中
|
|
|
-// if (!collect.isEmpty()) {
|
|
|
-// lambdaQuery.in(InvAccountIncoice::getInvoiceId, collect);
|
|
|
invAccountIncoices = selectExcel(lambdaQuery, invAccountIncoiceQueryVo);
|
|
|
-// }
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
//解决时间格式报错问题
|
|
|
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
|
|
invAccountIncoices.forEach(invAccountIncoice -> {
|
|
|
- if (!list.isEmpty()){
|
|
|
- DateTimeFormatter dtf3 = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
|
|
- invAccountIncoice.setPayoutDate(dtf3.format(list.get(0).getCreateTime()));
|
|
|
+ List<InvAccountOperateResult> createTimeList = invAccountIncoiceMapper.selectAccountOperate(invAccountIncoice.getInvoiceId());
|
|
|
+ if (createTimeList != null && !createTimeList.isEmpty()) {
|
|
|
+ for (InvAccountOperateResult result : createTimeList) {
|
|
|
+ if (result.getCreateTime() == null) {
|
|
|
+ invAccountIncoice.setPayoutDate("");
|
|
|
+ } else {
|
|
|
+ List<InvAccountOperateResult> sortedList = new ArrayList<>(createTimeList);
|
|
|
+ sortedList.sort(Comparator.comparing(InvAccountOperateResult::getCreateTime).reversed());
|
|
|
+ invAccountIncoice.setPayoutDate(createTimeList.get(0).getCreateTime().format(formatter).toString());
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
if (invAccountIncoice.getInvoiceTime() != null) {
|
|
|
invAccountIncoice.setInvoiceDate(invAccountIncoice.getInvoiceTime().toString());
|