|
@@ -9,6 +9,7 @@ import java.math.BigDecimal;
|
|
|
import java.math.RoundingMode;
|
|
|
import java.sql.Timestamp;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
+import java.time.LocalDate;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
import javax.annotation.Resource;
|
|
@@ -121,16 +122,28 @@ public class BizFinancialSalaryController extends BaseController {
|
|
|
@PreAuthorize("@ss.hasPermi('business:salary:list')")
|
|
|
@GetMapping("/list")
|
|
|
public TableDataInfo list(BizFinancialSalary bizFinancialSalary) throws NoSuchFieldException, IllegalAccessException {
|
|
|
+ String chooseYear = bizFinancialSalary.getYear();
|
|
|
+ int nwoYear = LocalDate.now().getYear();
|
|
|
setTenantId(bizFinancialSalary);
|
|
|
startPage();
|
|
|
startOrderBy();
|
|
|
+ bizFinancialSalary.setYear(String.valueOf(nwoYear));
|
|
|
bizFinancialSalary.setIsZero(0);
|
|
|
+
|
|
|
List<BizFinancialSalary> list = bizFinancialSalaryService.getList(bizFinancialSalary);
|
|
|
if (!list.isEmpty()) {
|
|
|
- List<BizFinancialSalaryDetail> details = bizFinancialSalaryDetailService.query().in("financial_salary_id", list.stream().map(BizFinancialSalary::getId).collect(Collectors.toList())).eq("year", bizFinancialSalary.getYear()).list();
|
|
|
- list.forEach(l -> {
|
|
|
- l.setDetails(details.stream().filter(v -> v.getFinancialSalaryId().equals(l.getId())).collect(Collectors.toList()));
|
|
|
- });
|
|
|
+ if (!chooseYear.equals(nwoYear)){
|
|
|
+ List<BizFinancialSalaryDetail> details = bizFinancialSalaryDetailService.query().in("financial_salary_id", list.stream().map(BizFinancialSalary::getId).collect(Collectors.toList())).eq("year",chooseYear).list();
|
|
|
+ list.forEach(l -> {
|
|
|
+ l.setDetails(details.stream().filter(v -> v.getFinancialSalaryId().equals(l.getId())).collect(Collectors.toList()));
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ List<BizFinancialSalaryDetail> details = bizFinancialSalaryDetailService.query().in("financial_salary_id", list.stream().map(BizFinancialSalary::getId).collect(Collectors.toList())).eq("year",bizFinancialSalary.getYear()).list();
|
|
|
+ list.forEach(l -> {
|
|
|
+ l.setDetails(details.stream().filter(v -> v.getFinancialSalaryId().equals(l.getId())).collect(Collectors.toList()));
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
return getDataTable(list);
|
|
|
}
|